Class: Raven::Interface

Inherits:
Hashie::Dash
  • Object
show all
Defined in:
lib/raven/interfaces.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}, &block) ⇒ Interface

Returns a new instance of Interface.



8
9
10
11
12
13
14
# File 'lib/raven/interfaces.rb', line 8

def initialize(attributes = {}, &block)
  @check_required = false
  super(attributes)
  block.call(self) if block
  @check_required = true
  assert_required_properties_set!
end

Class Method Details

.name(value = nil) ⇒ Object



20
21
22
23
# File 'lib/raven/interfaces.rb', line 20

def self.name(value = nil)
  @interface_name = value if value
  @interface_name
end

Instance Method Details

#assert_required_properties_set!Object



16
17
18
# File 'lib/raven/interfaces.rb', line 16

def assert_required_properties_set!
  super if @check_required
end