class Fabrication::Schematic::Evaluator
Public Instance Methods
after_build(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 20 def after_build(&block) @_definition.callbacks[:after_build] ||= [] @_definition.callbacks[:after_build] << block end
after_create(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 45 def after_create(&block) @_definition.callbacks[:after_create] ||= [] @_definition.callbacks[:after_create] << block end
after_save(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 50 def after_save(&block) @_definition.callbacks[:after_save] ||= [] @_definition.callbacks[:after_save] << block end
after_validation(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 30 def after_validation(&block) @_definition.callbacks[:after_validation] ||= [] @_definition.callbacks[:after_validation] << block end
before_create(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 40 def before_create(&block) @_definition.callbacks[:before_create] ||= [] @_definition.callbacks[:before_create] << block end
before_save(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 35 def before_save(&block) @_definition.callbacks[:before_save] ||= [] @_definition.callbacks[:before_save] << block end
before_validation(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 25 def before_validation(&block) @_definition.callbacks[:before_validation] ||= [] @_definition.callbacks[:before_validation] << block end
init_with(*args)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 63 def init_with(*args) args end
initialize_with(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 59 def initialize_with(&block) @_definition.callbacks[:initialize_with] = block end
method_missing(method_name, *args, &block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 13 def method_missing(method_name, *args, &block) params = ::Fabrication::Support.extract_options!(args) value = args.first block = @_definition.generate_value(method_name, params) if args.empty? && !block @_definition.append_or_update_attribute(method_name, value, params, &block) end
on_init(&block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 55 def on_init(&block) @_definition.callbacks[:on_init] = block end
process(definition, &block)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 4 def process(definition, &block) @_definition = definition instance_eval(&block) end
respond_to_missing?(_method_name, _include_private = false)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 9 def respond_to_missing?(_method_name, _include_private = false) true end
transient(*field_names)
click to toggle source
# File lib/fabrication/schematic/evaluator.rb, line 67 def transient(*field_names) field_names.each do |field_name| if field_name.is_a?(::Hash) field_name.each_pair { |name, value| @_definition.append_or_update_attribute(name, value, transient: true) } else @_definition.append_or_update_attribute(field_name, nil, transient: true) end end end