private static NamespaceDeclarationSyntax AddTypeToTargetNamespace(TypeDeclarationSyntax originalTargetType, NamespaceDeclarationSyntax targetNamespace, TypeDeclarationSyntax targetType) { if (originalTargetType != null) { targetNamespace = targetNamespace.RemoveNode(originalTargetType, SyntaxRemoveOptions.KeepNoTrivia); } else { var type = targetNamespace.DescendantNodes().OfType <TypeDeclarationSyntax>().FirstOrDefault(x => x.Identifier.ValueText == targetType.Identifier.ValueText); if (type != null) { targetNamespace = targetNamespace.RemoveNode(type, SyntaxRemoveOptions.KeepNoTrivia); } } targetNamespace = targetNamespace.AddMembers(targetType); return(targetNamespace); }
private static MemberDeclarationSyntax RemoveMember( NamespaceDeclarationSyntax namespaceDeclaration, MemberDeclarationSyntax member, int index) { MemberDeclarationSyntax newMember = RemoveSingleLineDocumentationComment(member); namespaceDeclaration = namespaceDeclaration .WithMembers(namespaceDeclaration.Members.Replace(member, newMember)); return(namespaceDeclaration .RemoveNode(namespaceDeclaration.Members[index], GetRemoveOptions(newMember))); }
public static MemberDeclarationSyntax RemoveMember( this NamespaceDeclarationSyntax declaration, MemberDeclarationSyntax member, int index) { MemberDeclarationSyntax newMember = member.RemoveSingleLineDocumentationComment(); declaration = declaration .WithMembers(declaration.Members.Replace(member, newMember)); return(declaration .RemoveNode(declaration.Members[index], MemberDeclarationRefactoring.GetRemoveOptions(newMember))); }
public static NamespaceDeclarationSyntax RemoveMember(NamespaceDeclarationSyntax namespaceDeclaration, MemberDeclarationSyntax member) { if (namespaceDeclaration == null) { throw new ArgumentNullException(nameof(namespaceDeclaration)); } if (member == null) { throw new ArgumentNullException(nameof(member)); } int index = namespaceDeclaration.Members.IndexOf(member); MemberDeclarationSyntax newMember = RemoveSingleLineDocumentationComment(member); namespaceDeclaration = namespaceDeclaration.WithMembers(namespaceDeclaration.Members.ReplaceAt(index, newMember)); return(namespaceDeclaration.RemoveNode(namespaceDeclaration.Members[index], GetRemoveOptions(newMember))); }