ArchiMetrics.Analysis.CodeMetricsCalculator.VerifyCompilation C# (CSharp) Метод

VerifyCompilation() приватный статический Метод

private static VerifyCompilation ( Compilation compilation, NamespaceDeclarationSyntaxInfo namespaceNode ) : Task>
compilation Compilation
namespaceNode ArchiMetrics.Analysis.Metrics.NamespaceDeclarationSyntaxInfo
Результат Task>
		private static async Task<Tuple<Compilation, SemanticModel, SyntaxTree, NamespaceDeclarationSyntaxInfo>> VerifyCompilation(Compilation compilation, NamespaceDeclarationSyntaxInfo namespaceNode)
		{
			SemanticModel semanticModel;
			var tree = namespaceNode.Syntax.SyntaxTree;
			if (tree == null)
			{
				var compilationUnit = SyntaxFactory.CompilationUnit()
					.WithMembers(SyntaxFactory.List(new[] { (MemberDeclarationSyntax)namespaceNode.Syntax }));
				var cu = CSharpSyntaxTree.Create(compilationUnit);
				var root = await cu.GetRootAsync().ConfigureAwait(false);
				namespaceNode.Syntax = root.ChildNodes().First();
				var newCompilation = compilation.AddSyntaxTrees(cu);
				semanticModel = newCompilation.GetSemanticModel(cu);
				return new Tuple<Compilation, SemanticModel, SyntaxTree, NamespaceDeclarationSyntaxInfo>(newCompilation, semanticModel, cu, namespaceNode);
			}

			var result = AddToCompilation(compilation, tree);
			compilation = result.Item1;
			tree = result.Item2;
			semanticModel = compilation.GetSemanticModel(tree);
			return new Tuple<Compilation, SemanticModel, SyntaxTree, NamespaceDeclarationSyntaxInfo>(compilation, semanticModel, tree, namespaceNode);
		}

Same methods

CodeMetricsCalculator::VerifyCompilation ( Compilation compilation, TypeDeclarationSyntaxInfo typeNode ) : Task>