class BusinessFlow::DSL::ParameterField

Helper class around input parameter fields

Public Class Methods

new(field, fallback = nil) click to toggle source
# File lib/business_flow/dsl.rb, line 470
def initialize(field, fallback = nil)
  retriever = "_business_flow_parameter_fetch(:#{field})"
  retriever += " { send(:#{fallback}) }" if fallback
  @field = MemoizedField.new(field, retriever, method(:setter_factory))
end

Public Instance Methods

add_to(klass) click to toggle source
# File lib/business_flow/dsl.rb, line 476
def add_to(klass)
  @field.add_to(klass)
  klass.send(:public, @field.field)
end
name() click to toggle source
# File lib/business_flow/dsl.rb, line 481
def name
  @field.name
end

Private Instance Methods

setter_factory(_field, ivar_name) click to toggle source
# File lib/business_flow/dsl.rb, line 487
def setter_factory(_field, ivar_name)
  "#{ivar_name} = new_value"
end