Class: IDL::AST::Initializer
- Defined in:
- lib/ridl/node.rb,
lib/ridl/node.rb
Overview
StateMember
Direct Known Subclasses
Constant Summary collapse
- NAMETYPE =
:member
Instance Attribute Summary collapse
-
#params ⇒ Object
readonly
Returns the value of attribute params.
-
#raises ⇒ Object
Returns the value of attribute raises.
Attributes inherited from Leaf
#annotations, #enclosure, #intern, #lm_name, #name, #prefix, #scopes
Instance Method Summary collapse
-
#initialize(_name, _enclosure, params) ⇒ Initializer
constructor
A new instance of Initializer.
- #instantiate(_context, _enclosure) ⇒ Object
- #marshal_dump ⇒ Object
- #marshal_load(vars) ⇒ Object
Methods inherited from Leaf
#_set_prefix, #has_annotations?, #is_local?, #is_template?, #lm_name_for_scope, #parsed_name_scope, #replace_prefix, #repo_scopes, #repository_id, #resolve, #scoped_lm_name, #scoped_name, #set_repo_id, #set_repo_version, #typename
Constructor Details
#initialize(_name, _enclosure, params) ⇒ Initializer
Returns a new instance of Initializer.
2079 2080 2081 2082 2083 2084 2085 2086 |
# File 'lib/ridl/node.rb', line 2079 def initialize(_name, _enclosure, params) super(_name, _enclosure) @params = (params[:params] || []).collect do |(ptype, pname)| IDL::AST::Parameter.new(pname, self, {:attribute => :in, :type => ptype}) end @raises = [] self.raises = params[:raises] end |
Instance Attribute Details
#params ⇒ Object (readonly)
Returns the value of attribute params.
2078 2079 2080 |
# File 'lib/ridl/node.rb', line 2078 def params @params end |
#raises ⇒ Object
Returns the value of attribute raises.
2078 2079 2080 |
# File 'lib/ridl/node.rb', line 2078 def raises @raises end |
Instance Method Details
#instantiate(_context, _enclosure) ⇒ Object
2108 2109 2110 2111 2112 2113 2114 2115 |
# File 'lib/ridl/node.rb', line 2108 def instantiate(_context, _enclosure) _params = { :raises => self.concrete_raises(_context) } _init = super(_context, _enclosure, _params) _init.set_concrete_parameters(_context, @params) _init end |
#marshal_dump ⇒ Object
2098 2099 2100 |
# File 'lib/ridl/node.rb', line 2098 def marshal_dump super() << @params << @raises end |
#marshal_load(vars) ⇒ Object
2102 2103 2104 2105 2106 |
# File 'lib/ridl/node.rb', line 2102 def marshal_load(vars) @raises = vars.pop @params = vars.pop super(vars) end |