class Railjet::ComposedPolicy
Attributes
context[R]
object[R]
policies[R]
Public Class Methods
add(policy, after: nil, before: nil)
click to toggle source
# File lib/railjet/composed_policy.rb, line 8 def self.add(policy, after: nil, before: nil) self.policies ||= [] if after self.policies = policies.dup.insert(policies.index(after) + 1, policy) elsif before self.policies = policies.dup.insert(policies.index(before), policy) else self.policies += [policy] end end
new(context, object)
click to toggle source
# File lib/railjet/composed_policy.rb, line 20 def initialize(context, object) @context, @object = context, object @policies = self.class.policies.map do |policy| policy.new(context, object) end end
Public Instance Methods
errors()
click to toggle source
# File lib/railjet/composed_policy.rb, line 32 def errors valid? policies.map(&:errors).inject(&:<<) end
valid?()
click to toggle source
# File lib/railjet/composed_policy.rb, line 28 def valid? policies.map(&:valid?).all? end
validate!()
click to toggle source
# File lib/railjet/composed_policy.rb, line 37 def validate! policies.each(&:validate!) end