Class: Duby::AST::InterfaceDeclaration

Inherits:
ClassDefinition show all
Defined in:
lib/duby/ast/class.rb

Instance Attribute Summary collapse

Attributes included from Named

#name

Attributes inherited from Node

#children, #inferred_type, #newline, #parent, #position

Instance Method Summary collapse

Methods inherited from ClassDefinition

#compile, #implements, #infer

Methods included from Named

#to_s

Methods inherited from Node

#[], #each, #expr?, #inspect, #line_number, #log, #precompile, #resolve_if, #resolved!, #resolved?, #simple_name, #temp, #to_s

Constructor Details

#initialize(parent, line_number, name) ⇒ InterfaceDeclaration

Returns a new instance of InterfaceDeclaration.



49
50
51
52
53
54
55
# File 'lib/duby/ast/class.rb', line 49

def initialize(parent, line_number, name)
  super(parent, line_number, name) {|p| }
  @interfaces = []
  @name = name
  @children = yield(self)
  @interfaces, @body = children
end

Instance Attribute Details

#bodyObject

Returns the value of attribute body.



47
48
49
# File 'lib/duby/ast/class.rb', line 47

def body
  @body
end

#interfacesObject

Returns the value of attribute interfaces.



47
48
49
# File 'lib/duby/ast/class.rb', line 47

def interfaces
  @interfaces
end

#superclassObject

Returns the value of attribute superclass.



47
48
49
# File 'lib/duby/ast/class.rb', line 47

def superclass
  @superclass
end