Module: StateFlow::Builder::ClientClassMethods
- Defined in:
- lib/state_flow/builder.rb
Instance Method Summary collapse
- #state_flow(selectable_attr, options = nil, &block) ⇒ Object
- #state_flow_for(selectable_attr) ⇒ Object
Instance Method Details
#state_flow(selectable_attr, options = nil, &block) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/state_flow/builder.rb', line 12 def state_flow(selectable_attr, = nil, &block) = { :attr_key_name => "#{self.enum_base_name(selectable_attr)}_key".to_sym }.update( || {}) flow = Base.new(self, selectable_attr, [:attr_key_name]) flow.instance_eval(&block) flow.setup_events @state_flows ||= [] @state_flows << flow flow end |
#state_flow_for(selectable_attr) ⇒ Object
7 8 9 10 |
# File 'lib/state_flow/builder.rb', line 7 def state_flow_for(selectable_attr) return nil unless @state_flows @state_flows.detect{|flow| flow.attr_name == selectable_attr} end |