public override SyntaxNode VisitEnumDeclaration(EnumDeclarationSyntax node) { String name = node.Identifier.ValueText; String replaceName = ""; if (SharedContainer.Instance.nameMap.ContainsKey(name)) { replaceName = SharedContainer.Instance.nameMap[name]; } else { replaceName = SharedContainer.Instance.RandomString(SharedContainer.Instance.nameMap.Count() + 1); SharedContainer.Instance.nameType[name] = Priority.En_Priority.CLASS; SharedContainer.Instance.nameMap[name] = replaceName; } EnumDeclarationSyntax newSyntax = node.WithIdentifier(Identifier(replaceName)).WithLeadingTrivia(node.GetLeadingTrivia()).WithTrailingTrivia(node.GetTrailingTrivia()); return(base.VisitEnumDeclaration(node.ReplaceNode(node, newSyntax))); }