class Rsec::SeqOne_

skips skipper between tokens

Public Instance Methods

_parse(ctx) click to toggle source
# File lib/rsec/parsers/seq.rb, line 54
def _parse ctx
  ret = INVALID

  res = first._parse ctx
  return INVALID if INVALID[res]
  ret = res if 0 == idx

  check = idx - 1
  rest.each_with_index do |p, i|
    return INVALID if INVALID[skipper._parse ctx]
    res = p._parse ctx
    return INVALID if INVALID[res]
    ret = res if i == check
  end
  ret
end