public virtual ParserResults Parse(LookaheadTextReader input) { return ParseCore(new SeekableTextReader(input)); }
public virtual void Parse(LookaheadTextReader input, ParserVisitor visitor) { var results = ParseCore(new SeekableTextReader(input)); // Replay the results on the visitor visitor.Visit(results); }
protected void ReadToEnd(StringBuilder builder, LookaheadTextReader reader) { builder.Append(reader.ReadToEnd()); }
private static void RunAll(Action<StringBuilder, LookaheadTextReader>[] readerCommands, StringBuilder builder, LookaheadTextReader reader) { foreach (Action<StringBuilder, LookaheadTextReader> readerCommand in readerCommands) { readerCommand(builder, reader); } }
private static void AdvanceReader(int offset, LookaheadTextReader reader) { for (int i = 0; i < offset; i++) { reader.Read(); } }
protected void CancelBacktrack(StringBuilder builder, LookaheadTextReader reader) { reader.CancelBacktrack(); }