Class: Emendate::TokenCollapser
- Inherits:
-
Object
- Object
- Emendate::TokenCollapser
- Defined in:
- lib/emendate/token_collapser.rb
Constant Summary collapse
- DATE_SEPARATORS =
%i[hyphen slash]
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(tokens) ⇒ TokenCollapser
constructor
A new instance of TokenCollapser.
Constructor Details
#initialize(tokens) ⇒ TokenCollapser
Returns a new instance of TokenCollapser.
17 18 19 |
# File 'lib/emendate/token_collapser.rb', line 17 def initialize(tokens) @result = Emendate::SegmentSet.new.copy(tokens) end |
Class Method Details
.call ⇒ Object
10 11 12 |
# File 'lib/emendate/token_collapser.rb', line 10 def call(...) new(...).call end |
Instance Method Details
#call ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/emendate/token_collapser.rb', line 21 def call while collapsible? action = determine_action break if action.nil? pre = result.types.dup action.call break if result.types == pre end full_match_date_part_collapsers Success(result) end |