class Uber::Builder::Constant
Public Class Methods
new(constant)
click to toggle source
# File lib/garcon/utility/uber/builder.rb, line 32 def initialize(constant) # TODO: evaluate usage of builders and implement using Uber::Options::Value. @constant = constant @builders = @constant.builders # only dependency, must be a Cell::Base subclass. end
Public Instance Methods
call(*args)
click to toggle source
# File lib/garcon/utility/uber/builder.rb, line 37 def call(*args) build_class_for(*args) end
Private Instance Methods
build_class_for(*args)
click to toggle source
# File lib/garcon/utility/uber/builder.rb, line 42 def build_class_for(*args) @builders.each do |blk| klass = run_builder_block(blk, *args) and return klass end @constant end
run_builder_block(block, *args)
click to toggle source
# File lib/garcon/utility/uber/builder.rb, line 49 def run_builder_block(block, *args) block.call(*args) end