public static DestructorDeclarationSyntax InsertModifier(DestructorDeclarationSyntax destructorDeclaration, SyntaxToken modifier, IModifierComparer comparer) { if (destructorDeclaration == null) { throw new ArgumentNullException(nameof(destructorDeclaration)); } SyntaxTokenList modifiers = destructorDeclaration.Modifiers; if (!modifiers.Any()) { SyntaxToken identifier = destructorDeclaration.Identifier; return(destructorDeclaration .WithIdentifier(identifier.WithoutLeadingTrivia()) .WithModifiers(TokenList(modifier.WithLeadingTrivia(identifier.LeadingTrivia)))); } return(destructorDeclaration.WithModifiers(modifiers.InsertModifier(modifier, comparer))); }