Class: Amakanize::Filters::BookPositionAtEndDetectionFilter

Inherits:
BaseFilter
  • Object
show all
Defined in:
lib/amakanize/filters/book_position_at_end_detection_filter.rb

Constant Summary collapse

PATTERN =
/
  (?:#{::Amakanize::PATTERN_OF_PREFIX_OF_BOOK_POSITION})?
  (#{::Amakanize::PATTERN_OF_NUMERIC_CHARACTERS})
  (?:#{::Amakanize::PATTERN_OF_SUFFIX_OF_BOOK_POSITION})?
  \s*
  \z
/x

Instance Method Summary collapse

Instance Method Details

#call(context:, output:) ⇒ Object

Note:

Override



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/amakanize/filters/book_position_at_end_detection_filter.rb', line 15

def call(context:, output:)
  unless context[:position_detected]
    if position = output[PATTERN, 1]
      context[:position_detected] = true
      output = position
    end
  end
  {
    context: context,
    output: output,
  }
end