Class: Prick::Build::ModuleNode
Instance Attribute Summary collapse
-
#command ⇒ Object
readonly
Returns the value of attribute command.
-
#klass ⇒ Object
readonly
Returns the value of attribute klass.
Attributes inherited from Node
#args, #kind, #parent, #path, #phase
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(parent, phase, path, klass, command, args = nil) ⇒ ModuleNode
constructor
A new instance of ModuleNode.
- #inspect ⇒ Object
- #object ⇒ Object
Methods inherited from Node
#dump, #lines, #name, #prefix_lines, #relpath, #schema, #schema=, #source, #source_lines, #to_s
Constructor Details
#initialize(parent, phase, path, klass, command, args = nil) ⇒ ModuleNode
Returns a new instance of ModuleNode.
99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
# File 'lib/prick/builder/node.rb', line 99 def initialize(parent, phase, path, klass, command, args = nil) constrain klass, Symbol, String constrain command, Symbol, String super(parent, phase, :module, path, args) @klass = klass.to_sym @command = command.to_sym if !object Kernel.class_eval File.read(path) self.class.objects[@klass] = eval(klass.to_s).new(conn) end end |
Instance Attribute Details
#command ⇒ Object (readonly)
Returns the value of attribute command.
96 97 98 |
# File 'lib/prick/builder/node.rb', line 96 def command @command end |
#klass ⇒ Object (readonly)
Returns the value of attribute klass.
95 96 97 |
# File 'lib/prick/builder/node.rb', line 95 def klass @klass end |
Instance Method Details
#call ⇒ Object
114 115 116 |
# File 'lib/prick/builder/node.rb', line 114 def call() object.send(@command, *args) end |
#inspect ⇒ Object
118 |
# File 'lib/prick/builder/node.rb', line 118 def inspect() "#{path} #{klass}##{command}" end |
#object ⇒ Object
97 |
# File 'lib/prick/builder/node.rb', line 97 def object() self.class.objects[klass] end |