Ejemplo n.º 1
0
        public void ReadForward(ParsingResultNode node)
        {
            if (node == null)
            {
                throw new ArgumentNullException(nameof(node));
            }

            var missingCount = 0;

            node.Start = GetPosition();
            if (node.Length != null)
            {
                node.Value = ReadForward(node.Length.Value, out missingCount);
            }
            if (node.Value == null)
            {
                node.HasError = true;
                node.Value    = ReadToEnd();
                throw new ParserException(Invariant($"End of message reached! Missing {missingCount} char(s)!"), node);
            }
        }
Ejemplo n.º 2
0
 public ParserException(string message, ParsingResultNode node)
     : this(message)
 {
     Node = node;
 }