Esempio n. 1
0
        public ExpectedTokenException(Token unexpectedToken, DiagnosticBuilder.ErrorBuilderDelegate errorFunc)
            : base()
        {
            // To avoid the squiggly spanning multiple lines, return a 0-length span at the end of the line for a newline token.
            var errorSpan = unexpectedToken.Type == TokenType.NewLine ?
                            unexpectedToken.ToZeroLengthSpan() :
                            unexpectedToken.Span;

            Error = errorFunc(DiagnosticBuilder.ForPosition(errorSpan));
        }
Esempio n. 2
0
 private void AddDiagnostic(DiagnosticBuilder.ErrorBuilderDelegate diagnosticFunc)
 => AddDiagnostic(textWindow.GetSpan(), diagnosticFunc);
Esempio n. 3
0
        private void AddDiagnostic(TextSpan span, DiagnosticBuilder.ErrorBuilderDelegate diagnosticFunc)
        {
            var diagnostic = diagnosticFunc(DiagnosticBuilder.ForPosition(span));

            this.diagnosticWriter.Write(diagnostic);
        }
Esempio n. 4
0
 public BannedFunction(string name, DiagnosticBuilder.ErrorBuilderDelegate errorFunc)
 {
     this.Name      = name;
     this.errorFunc = errorFunc;
 }
Esempio n. 5
0
 protected ErrorDiagnostic CreateError(IPositionable positionable, DiagnosticBuilder.ErrorBuilderDelegate errorFunc)
 => errorFunc(DiagnosticBuilder.ForPosition(positionable));
Esempio n. 6
0
 private void SetRestoreFailure(ModuleDeclarationSyntax module, DiagnosticBuilder.ErrorBuilderDelegate failureBuilder)
 {
     this.restoreStatuses.AddOrUpdate(module, failureBuilder);
 }
Esempio n. 7
0
 public static ErrorBuilderAssertions Should(this DiagnosticBuilder.ErrorBuilderDelegate errorBuilder) => new(errorBuilder);