public override void VisitNamespaceDeclaration(NamespaceDeclarationSyntax node) { MainDeclaration.Instance.RoslynWatch.Start(); INamespaceSymbol namescpaceSymbol = MainDeclaration.Instance.Model.GetDeclaredSymbol(node); MainDeclaration.Instance.RoslynWatch.Stop(); INamespaceSymbol actualNamespaceFromMergedNamespace = GetActualNamespaceFromMergedNamespace(namescpaceSymbol, node); Package limNode = SymbolBuilder.BuildDispatch <Package, INamespaceSymbol>(actualNamespaceFromMergedNamespace); MainDeclaration.Instance.LimOrigin.addCompIdCsharpIdLimIdToMap(MainDeclaration.Instance.Component.Id, _map[node], limNode.Id); node.CreateCommentNode(actualNamespaceFromMergedNamespace); node.CreateCommentForCU(); base.VisitNamespaceDeclaration(node); if (MainDeclaration.Instance.NamespaceStack.Peek() > 0 && MainDeclaration.Instance.UsesStack.Count > 0) { Package package = (Package)MainDeclaration.Instance.LimFactory.getRef( MainDeclaration.Instance.NamespaceStack.Peek() ); Commons.Common.AddUses(package); MainDeclaration.Instance.UsesStack.Pop(); } limNode.SetCLOC(node); var location = node.GetLocation(); location.CalculateFileLevelCommentLines(); location.CalculateFileLevelNumberOfBranches(); }