Beispiel #1
0
 public CheckAssembly(ICompilationInfo compilationInfo)
 {
     this.compilationInfo = compilationInfo;
     this.FileName        = string.Format("{0}.dll", compilationInfo.Project.AssemblyName);
     this.Position        = new Position(0, this.FileName);
     this.Name            = compilationInfo.Project.AssemblyName;
 }
Beispiel #2
0
 public CheckClasses(ICompilationInfo compilationInfo, string pattern)
     : base(compilationInfo, pattern, "class")
 {
 }
Beispiel #3
0
 public CheckClasses(ICompilationDocument document, ICompilationInfo compile, string pattern)
     : base(document, compile, pattern, "class")
 {
 }
Beispiel #4
0
 private IEnumerable <CheckFile> Gets(ICompilationInfo compilationInfo)
 {
     return(from document in compilationInfo.Project.Documents
            where FileUtil.FilenameMatchesPattern(document.Name, this.pattern)
            select new CheckFile(document, compilationInfo));
 }
Beispiel #5
0
 public Files(ICompilationInfo compilationInfo)
 {
     this.pattern    = "*";
     this.checkFiles = this.Gets(compilationInfo);
 }
Beispiel #6
0
 public CheckFile(ICompilationDocument document, ICompilationInfo compile)
 {
     this.document = document;
     this.compile  = compile;
     this.Name     = document.Name;
 }
Beispiel #7
0
 public CheckInterface(string name, string nameSpace, ICompilationInfo compilationInfo, Position position)
     : base(name, nameSpace, position)
 {
     this.compilationInfo = compilationInfo;
 }
Beispiel #8
0
 protected CheckTypes(ICompilationDocument document, ICompilationInfo compile, string pattern, string typeName)
     : this(compile.Get <T>(document), pattern, typeName)
 {
 }
Beispiel #9
0
 public TypeSymbolCollection(ICompilationInfo info, ICompilationLifetime lifetime)
 {
     _sourceCompilation  = info.SourceCompilation as CSharpCompilation ?? throw new NotSupportedException("Source Generator does not support languages other then C#");
     _currentCompilation = _sourceCompilation;
     _ct = lifetime.OnCompilationCancelled;
 }
Beispiel #10
0
 public CheckMethods(ICompilationInfo compilationInfo, string pattern)
 {
     this.pattern = pattern;
     this.methods = compilationInfo.Get <IMethod>();
 }
Beispiel #11
0
 public CheckInterfaces(ICompilationInfo compilationInfo, string pattern)
     : base(compilationInfo, pattern, "interface")
 {
 }
Beispiel #12
0
 public CheckProject(FileInfo file)
 {
     this.compilationInfo = Locator.Get <ICompilationInfoFactory>().GetCompilationInfo(file);
     this.Name            = this.compilationInfo.Project.Name;
 }
 public SourceCodeAnalysis(ITypeSymbolProvider provider, ICompilationInfo compilationInfo, ICompilationLifetime lifetime)
 {
     _provider        = provider;
     _compilationInfo = compilationInfo;
     _lifetime        = lifetime;
 }
Beispiel #14
0
        private static IEnumerable <T> Visit <T>(SyntaxTree syntaxTreeAsync, Microsoft.CodeAnalysis.Compilation compile, ICompilationInfo compilationInfo, ICompilationDocument document)
        {
            CheckClassVisitor visitor;

            if (!CompilationDocumentResult.TryGetValue(document.FullName, out visitor))
            {
                var semanticModel = compile.GetSemanticModel(syntaxTreeAsync);

                visitor = new CheckClassVisitor(document, semanticModel, compilationInfo);

                visitor.Visit(syntaxTreeAsync.GetRoot());

                CompilationDocumentResult.Add(document.FullName, visitor);
            }

            return(visitor.Get <T>());
        }
Beispiel #15
0
 public CheckReferences(ICompilationInfo compilationInfo, string pattern)
 {
     this.checkReferences =
         compilationInfo.Project.References.Where(r => FileUtil.FilenameMatchesPattern(r.Name, pattern))
         .Select(r => new CheckReference(r.Name));
 }