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

Instance Method Summary collapse

Instance Method Details

#call(context:, output:) ⇒ Object

Note:

Override



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

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