class Ellington::Connection
Attributes
line[R]
states[R]
strict[R]
Public Class Methods
new(line, *states, strict: false)
click to toggle source
# File lib/ellington/connection.rb, line 5 def initialize(line, *states, strict: false) @line = line @states = Ellington::Target.new(*states) @strict = strict end
Public Instance Methods
required?(passenger)
click to toggle source
# File lib/ellington/connection.rb, line 11 def required?(passenger) return false if line.boarded?(passenger) return (passenger.state_history & states).length == states.length if strict states.satisfied?(passenger) end