Class StateMachine::BlacklistMatcher
In: lib/state_machine/matcher.rb
Parent: Matcher

Matches everything but a specific set of values

Methods

Public Instance methods

A human-readable description of this matcher

[Source]

    # 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

[Source]

    # 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.

Examples

  matcher = StateMachine::BlacklistMatcher.new([:parked, :idling])
  matcher.matches?(:parked)       # => false
  matcher.matches?(:first_gear)   # => true

[Source]

    # File lib/state_machine/matcher.rb, line 85
85:     def matches?(value, context = {})
86:       !values.include?(value)
87:     end

[Validate]