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.
105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
# File 'lib/prick/builder/node.rb', line 105 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.
102 103 104 |
# File 'lib/prick/builder/node.rb', line 102 def command @command end |
#klass ⇒ Object (readonly)
Returns the value of attribute klass.
101 102 103 |
# File 'lib/prick/builder/node.rb', line 101 def klass @klass end |
Instance Method Details
#call ⇒ Object
120 121 122 |
# File 'lib/prick/builder/node.rb', line 120 def call() object.send(@command, *args) end |
#inspect ⇒ Object
124 |
# File 'lib/prick/builder/node.rb', line 124 def inspect() "#{path} #{klass}##{command}" end |
#object ⇒ Object
103 |
# File 'lib/prick/builder/node.rb', line 103 def object() self.class.objects[klass] end |