/// <summary> /// Construct a new ReferencesCodeLensProvider for a given EditorSession. /// </summary> /// <param name="workspaceService"></param> /// <param name="symbolsService"></param> public ReferencesCodeLensProvider(WorkspaceService workspaceService, SymbolsService symbolsService) { _workspaceService = workspaceService; _symbolsService = symbolsService; // TODO: Pull this from components _symbolProvider = new ScriptDocumentSymbolProvider(); }
/// <summary> /// Constructs an instance of the SymbolsService class and uses /// the given Runspace to execute language service operations. /// </summary> /// <param name="factory">An ILoggerFactory implementation used for writing log messages.</param> public SymbolsService( ILoggerFactory factory, PowerShellContextService powerShellContextService, WorkspaceService workspaceService) { _logger = factory.CreateLogger <SymbolsService>(); _powerShellContextService = powerShellContextService; _workspaceService = workspaceService; _codeLensProviders = new ConcurrentDictionary <string, ICodeLensProvider>(); var codeLensProviders = new ICodeLensProvider[] { new ReferencesCodeLensProvider(_workspaceService, this), new PesterCodeLensProvider(), }; foreach (ICodeLensProvider codeLensProvider in codeLensProviders) { _codeLensProviders.TryAdd(codeLensProvider.ProviderId, codeLensProvider); } _documentSymbolProviders = new ConcurrentDictionary <string, IDocumentSymbolProvider>(); var documentSymbolProviders = new IDocumentSymbolProvider[] { new ScriptDocumentSymbolProvider(), new PsdDocumentSymbolProvider(), new PesterDocumentSymbolProvider(), }; foreach (IDocumentSymbolProvider documentSymbolProvider in documentSymbolProviders) { _documentSymbolProviders.TryAdd(documentSymbolProvider.ProviderId, documentSymbolProvider); } }
/// <summary> /// Construct a new ReferencesCodeLensProvider for a given EditorSession. /// </summary> /// <param name="editorSession"></param> public ReferencesCodeLensProvider(EditorSession editorSession) { _editorSession = editorSession; // TODO: Pull this from components _symbolProvider = new ScriptDocumentSymbolProvider( editorSession.PowerShellContext.LocalPowerShellVersion.Version); }
/// <summary> /// Constructs an instance of the SymbolsService class and uses /// the given Runspace to execute language service operations. /// </summary> /// <param name="factory">An ILoggerFactory implementation used for writing log messages.</param> /// <param name="runspaceContext"></param> /// <param name="executionService"></param> /// <param name="workspaceService"></param> /// <param name="configurationService"></param> public SymbolsService( ILoggerFactory factory, IRunspaceContext runspaceContext, IInternalPowerShellExecutionService executionService, WorkspaceService workspaceService, ConfigurationService configurationService) { _logger = factory.CreateLogger <SymbolsService>(); _runspaceContext = runspaceContext; _executionService = executionService; _workspaceService = workspaceService; _codeLensProviders = new ConcurrentDictionary <string, ICodeLensProvider>(); ICodeLensProvider[] codeLensProviders = new ICodeLensProvider[] { new ReferencesCodeLensProvider(_workspaceService, this), new PesterCodeLensProvider(configurationService) }; foreach (ICodeLensProvider codeLensProvider in codeLensProviders) { _codeLensProviders.TryAdd(codeLensProvider.ProviderId, codeLensProvider); } _documentSymbolProviders = new ConcurrentDictionary <string, IDocumentSymbolProvider>(); IDocumentSymbolProvider[] documentSymbolProviders = new IDocumentSymbolProvider[] { new ScriptDocumentSymbolProvider(), new PsdDocumentSymbolProvider(), new PesterDocumentSymbolProvider(), }; foreach (IDocumentSymbolProvider documentSymbolProvider in documentSymbolProviders) { _documentSymbolProviders.TryAdd(documentSymbolProvider.ProviderId, documentSymbolProvider); } }
public bool TryRegisterDocumentSymbolProvider(IDocumentSymbolProvider documentSymbolProvider) { return(_documentSymbolProviders.TryAdd(documentSymbolProvider.ProviderId, documentSymbolProvider)); }
public bool TryRegisterDocumentSymbolProvider(IDocumentSymbolProvider documentSymbolProvider) => _documentSymbolProviders.TryAdd(documentSymbolProvider.ProviderId, documentSymbolProvider);
/// <summary> /// Create a new Pester CodeLens provider for a given editor session. /// </summary> public PesterCodeLensProvider(ConfigurationService configurationService) { _configurationService = configurationService; _symbolProvider = new PesterDocumentSymbolProvider(); }
public ExternalDocumentSymbolProviderAdapter( IDocumentSymbolProvider externalDocumentSymbolProvider) { _symbolProvider = externalDocumentSymbolProvider; }
public bool RegisterDocumentSymbolProvider(IDocumentSymbolProvider documentSymbolProvider) { return(_symbolsService.TryRegisterDocumentSymbolProvider(new ExternalDocumentSymbolProviderAdapter(documentSymbolProvider))); }
/// <summary> /// Create a new Pester CodeLens provider for a given editor session. /// </summary> /// <param name="editorSession">The editor session context for which to provide Pester CodeLenses.</param> public PesterCodeLensProvider(EditorSession editorSession) { _editorSession = editorSession; _symbolProvider = new PesterDocumentSymbolProvider(); }
/// <summary> /// Create a new Pester CodeLens provider for a given editor session. /// </summary> public PesterCodeLensProvider() { _symbolProvider = new PesterDocumentSymbolProvider(); }