Exemple #1
0
 public void AddParserMessage(ParserMessage message)
 {
     CurrentParseTree.ParserMessages.Add(message);
     if (OptionIsSet(ParseOptions.TraceParser))
     {
         ParserTrace.Add(new ParserTraceEntry(CurrentParserState, ParserStack.Top, CurrentParserInput, message.Message, true));
     }
 }
Exemple #2
0
        internal ParserTraceEntry AddParserTrace(ParserState state, ParseTreeNode stackTop, ParseTreeNode input)
        {
            var entry = new ParserTraceEntry(state, stackTop, input);

            ParserTrace.Add(entry);
            return(entry);
        }
Exemple #3
0
 public void AddParserMessage(ParserErrorLevel level, SourceLocation location, string message, params object[] args)
 {
     if (CurrentParseTree == null)
     {
         return;
     }
     if (CurrentParseTree.ParserMessages.Count >= MaxErrors)
     {
         return;
     }
     if (args != null && args.Length > 0)
     {
         message = string.Format(message, args);
     }
     CurrentParseTree.ParserMessages.Add(new ParserMessage(level, location, message, CurrentParserState));
     if (OptionIsSet(ParseOptions.TraceParser))
     {
         ParserTrace.Add(new ParserTraceEntry(CurrentParserState, ParserStack.Top, CurrentParserInput, message, true));
     }
 }
Exemple #4
0
 public void AddTrace(bool asError, string message, params object[] args)
 {
     if (!TracingEnabled)
     {
         return;
     }
     if (args != null && args.Length > 0)
     {
         message = string.Format(message, args);
     }
     ParserTrace.Add(new ParserTraceEntry(CurrentParserState, ParserStack.Top, CurrentParserInput, message, asError));
 }