Sha256: 5e0e2fae3870a9eb91a5bc4800bb6e4fa4a4a024f0d85a5615a8896e36ad9861
Contents?: true
Size: 631 Bytes
Versions: 1
Compression:
Stored size: 631 Bytes
Contents
module Treetop class TerminalSymbol < TerminalParsingExpression attr_accessor :prefix def self.epsilon @epsilon ||= self.new("") end def initialize(prefix) super() self.prefix = prefix end def epsilon? prefix.blank? end def to_s "\"#{prefix}\"" end def parse_at(input, start_index, parser) if input.index(prefix, start_index) == start_index return node_class.new(input, start_index...(prefix.length + start_index)) else TerminalParseFailure.new(start_index, self) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
treetop-0.1.0 | lib/treetop/grammar/parsing_expressions/terminal_symbol.rb |