Irony.Parsing.ParsingContext.AddTrace C# (CSharp) Méthode

AddTrace() public méthode

public AddTrace ( string message ) : void
message string
Résultat void
    public void AddTrace(string message, params object[] args) {
      if (!OptionIsSet(ParseOptions.TraceParser)) return;
      if (args != null && args.Length > 0)
        message = string.Format(message, args); 
      ParserTrace.Add(new ParserTraceEntry(CurrentParserState, ParserStack.Top, CurrentParserInput, message, false));
    }

Usage Example

        public override void Execute(ParsingContext context)
        {
            context.Status = ParserStatus.Error;
            var grammar = context.Language.Grammar;

            grammar.ReportParseError(context);
            // Do not recover if we're already at EOF, or if we're in command line mode
            if (context.CurrentParserInput.Term == grammar.Eof || context.Mode == ParseMode.CommandLine)
            {
                return;
            }
            //Try to recover from error
            context.Status = ParserStatus.Recovering;
            context.AddTrace(Resources.MsgTraceRecovering); // *** RECOVERING - searching for state with error shift ***
            var recovered = TryRecoverFromError(context);

            if (recovered)
            {
                context.AddTrace(Resources.MsgTraceRecoverSuccess); //add new trace entry
                context.Status = ParserStatus.Parsing;
            }
            else
            {
                context.AddTrace(Resources.MsgTraceRecoverFailed);
                context.Status = ParserStatus.Error;
            }
        }
All Usage Examples Of Irony.Parsing.ParsingContext::AddTrace