internal void Error(TokeniserState state) { if (errors.CanAddError) { errors.Add(new ParseError(reader.Pos(), "Unexpected character '{0}' in input state [{1}]", reader.Current(), state.Name())); } }
public void Consume() { CharacterReader r = new CharacterReader("one"); Assert.AreEqual(0, r.Pos()); Assert.AreEqual('o', r.Current()); Assert.AreEqual('o', r.Consume()); Assert.AreEqual(1, r.Pos()); Assert.AreEqual('n', r.Current()); Assert.AreEqual(1, r.Pos()); Assert.AreEqual('n', r.Consume()); Assert.AreEqual('e', r.Consume()); Assert.IsTrue(r.IsEmpty()); Assert.AreEqual(CharacterReader.EOF, r.Consume()); Assert.IsTrue(r.IsEmpty()); Assert.AreEqual(CharacterReader.EOF, r.Consume()); }