Class: IDL::Type::NodeType

Inherits:
IDL::Type show all
Defined in:
lib/ridl/type.rb

Constant Summary

Constants inherited from IDL::Type

Long, LongLong, Octet, Short, TinyShort, ULong, ULongLong, UShort, UTinyShort

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from IDL::Type

#instantiate, #is_anonymous?, #is_complete?, #is_template?, #narrow, #resolved_type, #typeerror, #typename

Constructor Details

#initialize(node) ⇒ NodeType

Returns a new instance of NodeType.



78
79
80
81
82
# File 'lib/ridl/type.rb', line 78

def initialize(node)
  raise node.inspect if node && !node.is_a?(IDL::AST::Leaf)

  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

Returns the value of attribute node.



76
77
78
# File 'lib/ridl/type.rb', line 76

def node
  @node
end

Instance Method Details

#is_local?(_recurstk = nil) ⇒ Boolean

Returns:



84
85
86
# File 'lib/ridl/type.rb', line 84

def is_local?(_recurstk = nil)
  @node.is_local?
end

#is_node?(node_class) ⇒ Boolean

Returns:



88
89
90
# File 'lib/ridl/type.rb', line 88

def is_node?(node_class)
  @node.is_a?(node_class)
end

#matches?(idltype) ⇒ Boolean

Returns:



96
97
98
# File 'lib/ridl/type.rb', line 96

def matches?(idltype)
  super && self.resolved_node == idltype.resolved_node
end

#resolved_nodeObject



92
93
94
# File 'lib/ridl/type.rb', line 92

def resolved_node
  @node
end