Class | StateMachine::BlacklistMatcher |
In: |
lib/state_machine/matcher.rb
|
Parent: | Matcher |
Matches everything but a specific set of values
A human-readable description of this matcher
# File lib/state_machine/matcher.rb, line 96 96: def description 97: "all - #{values.length == 1 ? values.first.inspect : values.inspect}" 98: end
Finds all values that are not within the blacklist configured for this matcher
# File lib/state_machine/matcher.rb, line 91 91: def filter(values) 92: values - self.values 93: end
Checks whether the given value exists outside the blacklist configured for this matcher.
matcher = StateMachine::BlacklistMatcher.new([:parked, :idling]) matcher.matches?(:parked) # => false matcher.matches?(:first_gear) # => true
# File lib/state_machine/matcher.rb, line 85 85: def matches?(value, context = {}) 86: !values.include?(value) 87: end