module Textoken::NumericOption

This module will be shared in options like, more_than and less_than

Attributes

findings[R]
number[R]

Public Class Methods

new(value) click to toggle source
# File lib/textoken/options/modules/numeric_option.rb, line 12
def initialize(value)
  @number = value
  @findings = Findings.new
  validate_option_value
end

Public Instance Methods

priority() click to toggle source
# File lib/textoken/options/modules/numeric_option.rb, line 8
def priority
  2
end

Private Instance Methods

tokenize_if(&code) click to toggle source
# File lib/textoken/options/modules/numeric_option.rb, line 20
def tokenize_if(&code)
  base.text.each_with_index do |w, i|
    findings.push(i, w) if code.call(w)
  end
  findings.result
end
validate(&code) click to toggle source
# File lib/textoken/options/modules/numeric_option.rb, line 27
def validate(&code)
  return if number.class == IntClass && code.call(number)
  Textoken.expression_err "value #{number} is not permitted for
    #{self.class.name} option."
end