# class Raven::Interface

### Public Class Methods

inherited(klass) click to toggle source
Calls superclass method

    # File sentry-raven/lib/raven/interface.rb, line 11
    def self.inherited(klass)
      name = klass.name.split("::").last.downcase.gsub("interface", "")
      registered[name.to_sym] = klass
      super
    end

new(attributes = nil) { |self| ... } click to toggle source

    # File sentry-raven/lib/raven/interface.rb, line 3
    def initialize(attributes = nil)
      attributes&.each do |attr, value|
        public_send "#{attr}=", value
      end

      yield self if block_given?
    end

registered() click to toggle source

    # File sentry-raven/lib/raven/interface.rb, line 17
    def self.registered
      @@registered ||= {} # rubocop:disable Style/ClassVars
    end

### Public Instance Methods

to_hash() click to toggle source

    # File sentry-raven/lib/raven/interface.rb, line 21
    def to_hash
      Hash[instance_variables.map { |name| [name[1..-1].to_sym, instance_variable_get(name)] }]
    end