class EverydayThorUtil::BuilderBuildItems::BuilderCommand
Public Class Methods
new(parent = nil, options = {}, &block)
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 7 def initialize(parent = nil, options = {}, &block) @aliases = options.delete(:aliases) if options.has_key?(:aliases) && !parent.nil? @parent = parent @options = options @body = block end
Public Instance Methods
[](name)
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 50 def [](name) if self.commands.has_key?(name) self.commands[name] elsif self.helpers.has_key?(name) self.helpers[name] elsif self.flags.has_key?(name) self.flags[name] else nil end end
[]=(name, obj)
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 62 def []=(name, obj) if obj.is_a?(Hash) self.flags[name] = obj elsif obj.is_a?(BuilderCommand) self.commands[name] = obj elsif obj.is_a?(Proc) self.helpers[name] = obj end end
aliases()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 30 def aliases @aliases ||= [] end
body()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 18 def body @body end
commands()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 34 def commands @commands ||= EverydayThorUtil::BuilderBuildLists::BuilderCommands.new(self) end
define(&block)
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 26 def define(&block) block.call(self.commands, self.flags, self.helpers) end
flags()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 38 def flags @flags ||= EverydayThorUtil::BuilderBuildLists::BuilderFlags.new(self) end
helpers()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 42 def helpers @helpers ||= EverydayThorUtil::BuilderBuildLists::BuilderHelpers.new(self) end
leaf?()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 46 def leaf? self.commands.commands.empty? && self.helpers.helpers.empty? end
options()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 22 def options @options end
parent()
click to toggle source
# File lib/everyday_thor_util/builder.rb, line 14 def parent @parent end