module Resol::Builder::ClassMethods
Public Instance Methods
build(...)
click to toggle source
# File lib/resol/builder.rb, line 48 def build(...) build_klass(...).new(...) end
build_klass(*args, **kwargs)
click to toggle source
# File lib/resol/builder.rb, line 35 def build_klass(*args, **kwargs) klass = self loop do new_klass = klass.builders.call(klass, *args, **kwargs) break if new_klass == klass klass = new_klass end klass end
builders()
click to toggle source
# File lib/resol/builder.rb, line 27 def builders @builders ||= Builders.new end
builds(proc = nil, &block)
click to toggle source
# File lib/resol/builder.rb, line 31 def builds(proc = nil, &block) builders << (proc || block) end