コード例 #1
0
        protected BaseExternalSourceService(IAssemblyLoader loader)
        {
            _loader                = loader;
            _featureAssembly       = _loader.LazyLoad(Configuration.RoslynFeatures);
            _csharpFeatureAssembly = _loader.LazyLoad(Configuration.RoslynCSharpFeatures);
            _workspaceAssembly     = _loader.LazyLoad(Configuration.RoslynWorkspaces);

            _symbolKey = _workspaceAssembly.LazyGetType(SymbolKey);
            _metadataAsSourceHelper            = _featureAssembly.LazyGetType(MetadataAsSourceHelpers);
            _getLocationInGeneratedSourceAsync = _metadataAsSourceHelper.LazyGetMethod(GetLocationInGeneratedSourceAsync);
        }
コード例 #2
0
        public OmniSharpCSharpDecompiledSourceService(IAssemblyLoader loader, ILoggerFactory loggerFactory)
        {
            _roslynFeatureAssembly         = loader.LazyLoad(Configuration.RoslynFeatures);
            _csharpFeatureAssembly         = loader.LazyLoad(Configuration.RoslynCSharpFeatures);
            _csharpMetadataAsSourceService = _roslynFeatureAssembly.LazyGetType(MetadataAsSourceHelpers);
            _csharpDocumentationCommentFormattingService = _csharpFeatureAssembly.LazyGetType(CSharpDocumentationCommentFormattingService);
            _docCommentConverter        = _csharpFeatureAssembly.LazyGetType(DocCommentConverter);
            _metadataGetAssemblyInfo    = _csharpMetadataAsSourceService.LazyGetMethod("GetAssemblyInfo");
            _metadataGetAssemblyDisplay = _csharpMetadataAsSourceService.LazyGetMethod("GetAssemblyDisplay");

            _loggerFactory = loggerFactory;
        }
コード例 #3
0
 public RunCodeActionService(
     IAssemblyLoader loader,
     OmniSharpWorkspace workspace,
     CodeActionHelper helper,
     [ImportMany] IEnumerable <ICodeActionProvider> providers,
     ILoggerFactory loggerFactory,
     ICsDiagnosticWorker diagnostics,
     CachingCodeFixProviderForProjects codeFixesForProjects)
     : base(workspace, providers, loggerFactory.CreateLogger <RunCodeActionService>(), diagnostics, codeFixesForProjects)
 {
     _loader            = loader;
     _workspaceAssembly = _loader.LazyLoad(Configuration.RoslynWorkspaces);
 }
コード例 #4
0
 public RunCodeActionService(
     IAssemblyLoader loader,
     OmniSharpWorkspace workspace,
     CodeActionHelper helper,
     [ImportMany] IEnumerable <ICodeActionProvider> providers,
     ILoggerFactory loggerFactory)
     : base(workspace, helper, providers, loggerFactory.CreateLogger <RunCodeActionService>())
 {
     _loader                  = loader;
     _workspaceAssembly       = _loader.LazyLoad(Configuration.RoslynWorkspaces);
     _renameDocumentOperation = _workspaceAssembly.LazyGetType(RenameDocumentOperation);
     _oldDocumentId           = _renameDocumentOperation.LazyGetField("_oldDocumentId", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
     _newDocumentId           = _renameDocumentOperation.LazyGetField("_newDocumentId", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
     _newFileName             = _renameDocumentOperation.LazyGetField("_newFileName", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
 }
コード例 #5
0
        public BlockStructureService(IAssemblyLoader loader, OmniSharpWorkspace workspace)
        {
            _workspace       = workspace;
            _loader          = loader;
            _featureAssembly = _loader.LazyLoad(Configuration.RoslynFeatures);

            _blockStructureService = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockStructureService");
            _blockStructure        = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockStructure");
            _blockSpan             = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockSpan");

            _getBlockStructure = _blockStructureService.LazyGetMethod("GetBlockStructure");
            _getSpans          = _blockStructure.Value.GetProperty("Spans").GetMethod;
            _getIsCollpasible  = _blockSpan.Value.GetProperty("IsCollapsible").GetMethod;
            _getTextSpan       = _blockSpan.Value.GetProperty("TextSpan").GetMethod;
            _getType           = _blockSpan.Value.GetProperty("Type").GetMethod;
        }
コード例 #6
0
        public BlockStructureService(IAssemblyLoader loader, OmniSharpWorkspace workspace)
        {
            _workspace             = workspace;
            _loader                = loader;
            _featureAssembly       = _loader.LazyLoad(Configuration.RoslynFeatures);
            _blockStructureService = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockStructureService");
            _blockStructure        = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockStructure");
            _taskOfBlockStructure  = new(() => typeof(Task <>).MakeGenericType(_blockStructure.Value));
            _blockSpan             = _featureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockSpan");

            _getBlockStructure = _blockStructureService.LazyGetMethod("GetBlockStructureAsync");
            _result            = _taskOfBlockStructure.LazyGetProperty("Result", getMethod: true);
            _getSpans          = _blockStructure.LazyGetProperty("Spans", getMethod: true);
            _getIsCollpasible  = _blockSpan.LazyGetProperty("IsCollapsible", getMethod: true);
            _getTextSpan       = _blockSpan.LazyGetProperty("TextSpan", getMethod: true);
            _getType           = _blockSpan.LazyGetProperty("Type", getMethod: true);
        }
 public BlockStructureWorkspaceOptionsProvider(IAssemblyLoader assemblyLoader)
 {
     _assemblyLoader        = assemblyLoader;
     _csharpFeatureAssembly = _assemblyLoader.LazyLoad(Configuration.RoslynFeatures);
     _blockStructureOptions = _csharpFeatureAssembly.LazyGetType("Microsoft.CodeAnalysis.Structure.BlockStructureOptions");
 }
コード例 #8
0
 public ImplementTypeWorkspaceOptionsProvider(IAssemblyLoader assemblyLoader)
 {
     _assemblyLoader        = assemblyLoader;
     _csharpFeatureAssembly = _assemblyLoader.LazyLoad(Configuration.RoslynFeatures);
     _implementTypeOptions  = _csharpFeatureAssembly.LazyGetType("Microsoft.CodeAnalysis.ImplementType.ImplementTypeOptions");
 }