Class: RGen::ModelBuilder::BuilderContext::ConstPathElement

Inherits:
Module
  • Object
show all
Defined in:
lib/rgen/model_builder/builder_context.rb

Instance Method Summary collapse

Constructor Details

#initialize(name, builderContext, parent = nil) ⇒ ConstPathElement

Returns a new instance of ConstPathElement.



167
168
169
170
171
# File 'lib/rgen/model_builder/builder_context.rb', line 167

def initialize(name, builderContext, parent=nil)
  @name = name.to_s
  @builderContext = builderContext
  @parent = parent
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(m, *args, &block) ⇒ Object



177
178
179
180
181
# File 'lib/rgen/model_builder/builder_context.rb', line 177

def method_missing(m, *args, &block)
  @builderContext._using(self) do
    send(m, *args, &block)
  end
end

Instance Method Details

#const_missing(const) ⇒ Object



173
174
175
# File 'lib/rgen/model_builder/builder_context.rb', line 173

def const_missing(const)
  ConstPathElement.new(const, @builderContext, self)
end

#constPathObject



183
184
185
186
187
188
189
# File 'lib/rgen/model_builder/builder_context.rb', line 183

def constPath
  if @parent
    @parent.constPath << @name
  else
    [@name]
  end
end