/// <summary> /// Report a syntax error encountered during scan of the source code. /// </summary> /// <param name="token">Token responsible for the problem.</param> /// <param name="startPosition">Source code start position.</param> /// <param name="stopPosition">source code end position.</param> /// <param name="scanErrorMessage">Scan error message because of source code syntax error.</param> void IronSmalltalk.Compiler.LexicalAnalysis.IScanErrorSink.AddScanError(IronSmalltalk.Compiler.LexicalTokens.IToken token, SourceLocation startPosition, SourceLocation stopPosition, string scanErrorMessage) { startPosition = this.TranslateSourcePosition(startPosition); stopPosition = this.TranslateSourcePosition(stopPosition); if (this.Processor.ErrorSink != null) { this.Processor.ErrorSink.AddScanError(token, startPosition, stopPosition, scanErrorMessage); } }
/// <summary> /// Report a semantical error encountered during parsing of the source code. /// </summary> /// <param name="startPosition">Source code start position.</param> /// <param name="stopPosition">source code end position.</param> /// <param name="parseErrorMessage">Parse error message because of source code semantical error.</param> /// <param name="offendingToken">Token responsible for the problem.</param> void IParseErrorSink.AddParserError(SourceLocation startPosition, SourceLocation stopPosition, string parseErrorMessage, IronSmalltalk.Compiler.LexicalTokens.IToken offendingToken) { startPosition = this.TranslateSourcePosition(startPosition); stopPosition = this.TranslateSourcePosition(stopPosition); if (this.Processor.ErrorSink != null) { this.Processor.ErrorSink.AddParserError(startPosition, stopPosition, parseErrorMessage, offendingToken); } }
void IronSmalltalk.Compiler.LexicalAnalysis.IScanErrorSink.AddScanError(IronSmalltalk.Compiler.LexicalTokens.IToken token, SourceLocation startPosition, SourceLocation stopPosition, string scanErrorMessage) { this.ReportError(scanErrorMessage, startPosition, stopPosition, ErrorType.Scan, token); }
void IParseErrorSink.AddParserError(IParseNode node, SourceLocation startPosition, SourceLocation stopPosition, string parseErrorMessage, IronSmalltalk.Compiler.LexicalTokens.IToken offendingToken) { this.ReportError(parseErrorMessage, startPosition, stopPosition, ErrorType.Parse, node, offendingToken); }