class Commutator::ItemModifiers
Public Class Methods
new(modifiers, factory: false)
click to toggle source
# File lib/commutator/item_modifiers.rb, line 3 def initialize(modifiers, factory: false) @modifiers = modifiers @factory = factory end
Public Instance Methods
expand_proc_modifiers()
click to toggle source
This is a mess, but I wasn’t sure how else to guarantee to call Procs at the time of collection creation
# File lib/commutator/item_modifiers.rb, line 14 def expand_proc_modifiers return self unless factory? self.class.new(@modifiers.map(&:call)) end
factory?()
click to toggle source
# File lib/commutator/item_modifiers.rb, line 8 def factory? @factory end
modify(item)
click to toggle source
# File lib/commutator/item_modifiers.rb, line 20 def modify(item) @modifiers.each { |modifier| modifier.call(item) } end