class Rsec::PInt
primitive int parser commons
Public Instance Methods
_parse(ctx)
click to toggle source
# File lib/rsec/parsers/prim.rb, line 57 def _parse ctx if (d = ctx.scan left) d = d.to_i @base return d if right.include?(d) end INVALID end
int_pattern(sign_strategy, base)
click to toggle source
# File lib/rsec/parsers/prim.rb, line 45 def int_pattern sign_strategy, base sign = sign_strategy_to_pattern sign_strategy if base > 10 d_hi = 9 char_range = "a-#{('a'.ord + base - 11).chr}" else d_hi = base - 1 char_range = '' end /#{sign}[0-#{d_hi}#{char_range}]+/i end