public SemanticModel GetSemanticModelFor(SyntaxNode node)
        {
            var filePath      = node.SyntaxTree.FilePath;
            var semanticModel = SyntaxTreeInfos
                                .Where(s => s.SyntaxTree.FilePath == filePath)
                                .Select(s => s.SemanticModel)
                                .FirstOrDefault();

            return(semanticModel);
        }
        public INamedTypeSymbol GetTypeByMetadataName(string name)
        {
            foreach (var semanticModel in SyntaxTreeInfos.Select(sti => sti.SemanticModel))
            {
                var namedTypeSymbol = semanticModel.Compilation.GetTypeByMetadataName(name);
                if (namedTypeSymbol != null)
                {
                    return(namedTypeSymbol);
                }
            }

            return(null);
        }