Module: Aygabtu::Scope::Remaining
- Defined in:
- lib/aygabtu/scope/remaining.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.factory_methods ⇒ Object
22 23 24 |
# File 'lib/aygabtu/scope/remaining.rb', line 22 def self.factory_methods [:remaining_at] end |
Instance Method Details
#inspect_data ⇒ Object
17 18 19 20 |
# File 'lib/aygabtu/scope/remaining.rb', line 17 def inspect_data return super unless @data.key?(:remaining_at) super.merge(remaining_at: "CP #{@data[:remaining_at]}") end |
#matches_route?(route) ⇒ Boolean
9 10 11 12 13 14 15 |
# File 'lib/aygabtu/scope/remaining.rb', line 9 def matches_route?(route) return super unless @data.key?(:remaining_at) at_checkpoint = @data[:remaining_at] route_touched = route.marks.any? { |mark| mark.checkpoint <= at_checkpoint } !route_touched && super end |
#remaining_at(checkpoint) ⇒ Object
4 5 6 7 |
# File 'lib/aygabtu/scope/remaining.rb', line 4 def remaining_at(checkpoint) new_data = @data.dup.merge(remaining_at: checkpoint) self.class.new(new_data) end |