internal override void ReportSyntacticRudeEdits( List<RudeEditDiagnostic> diagnostics, Match<SyntaxNode> match, Edit<SyntaxNode> edit, Dictionary<SyntaxNode, EditKind> editMap) { if (HasParentEdit(editMap, edit)) { return; } var classifier = new EditClassifier(this, diagnostics, edit.OldNode, edit.NewNode, edit.Kind, match); classifier.ClassifyEdit(); }
internal override void ReportMemberUpdateRudeEdits(List<RudeEditDiagnostic> diagnostics, SyntaxNode newMember, TextSpan? span) { var classifier = new EditClassifier(this, diagnostics, null, newMember, EditKind.Update, span: span); classifier.ClassifyMemberBodyRudeUpdate( newMember as MethodDeclarationSyntax, newMember.FirstAncestorOrSelf<TypeDeclarationSyntax>(), isTriviaUpdate: true); classifier.ClassifyDeclarationBodyRudeUpdates(newMember); }
internal override void ReportMemberUpdateRudeEdits(List<RudeEditDiagnostic> diagnostics, SyntaxNode newMember, TextSpan? span) { var classifier = new EditClassifier(this, diagnostics, null, newMember, EditKind.Update, span: span); classifier.ClassifyMemberBodyRudeUpdate( newMember as MethodDeclarationSyntax, newMember.FirstAncestorOrSelf<TypeDeclarationSyntax>(), isTriviaUpdate: true); // TODO (#749): handle lambdas in initializers & constructors classifier.ClassifyDeclarationBodyRudeUpdates(newMember, allowLambdas: !newMember.IsKind(SyntaxKind.ConstructorDeclaration) && !newMember.IsKind(SyntaxKind.VariableDeclarator)); }