Packages

c

scala.meta.internal.metals

MetalsLspService

abstract class MetalsLspService extends Folder with Cancelable with TextDocumentService with IndexProviders

Metals implementation of the Scala Language Service.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MetalsLspService
  2. IndexProviders
  3. TextDocumentService
  4. Cancelable
  5. Folder
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new MetalsLspService(ec: ExecutionContextExecutorService, sh: ScheduledExecutorService, serverInputs: MetalsServerInputs, languageClient: ConfiguredLanguageClient, initializeParams: InitializeParams, clientConfig: ClientConfiguration, statusBar: StatusBar, getFocusedDocument: () => Option[io.AbsolutePath], shellRunner: ShellRunner, timerProvider: TimerProvider, folder: io.AbsolutePath, folderVisibleName: Option[String], headDoctor: HeadDoctor, bspStatus: BspStatus, workDoneProgress: WorkDoneProgress, maxScalaCliServers: Int)

    ec

    Execution context used for submitting tasks. This class DO NOT manage the lifecycle of this execution context.

    sh

    Scheduled executor service used for scheduling tasks. This class DO NOT manage the lifecycle of this executor.

    serverInputs

    Collection of different parameters used by Metals for running, which main purpose is allowing for custom behavior in tests.

    initializeParams

    Initialization parameters send by the client in the initialize request, which is the first request sent to the server by the client.

Abstract Value Members

  1. abstract def buildData(): Seq[BuildTool]
    Definition Classes
    MetalsLspServiceIndexProviders
  2. abstract def buildServerPromise: Promise[Unit]
  3. abstract def fileWatcher: FileWatcher
    Definition Classes
    MetalsLspServiceIndexProviders
  4. abstract def indexer: Indexer
    Attributes
    protected
  5. abstract def maybeImportFileAndLoad(path: io.AbsolutePath, load: () => Future[Unit]): Future[Unit]
  6. abstract def onBuildTargetChanges(params: DidChangeBuildTarget): Unit
    Attributes
    protected
  7. abstract def onInitialized(): Future[Unit]
    Attributes
    protected
  8. abstract def projectInfo: MetalsServiceInfo
  9. abstract def semanticdbs(): Semanticdbs
    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def allActionCommandsIds: Set[String]
  5. def analyzeStackTrace(content: String): Option[ExecuteCommandParams]
  6. def applyEdits(uri: String, edits: List[TextEdit]): Future[ApplyWorkspaceEditResponse]
    Attributes
    protected
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. val bspErrorHandler: BspErrorHandler
    Attributes
    protected
  9. def bspSession: Option[BspSession]
  10. val buildClient: ForwardingMetalsBuildClient
  11. def buildHasErrors(path: io.AbsolutePath): Boolean
  12. val buildTargetClasses: BuildTargetClasses
    Definition Classes
    MetalsLspServiceIndexProviders
  13. val buildTargets: BuildTargets
    Definition Classes
    MetalsLspServiceIndexProviders
  14. def callHierarchyIncomingCalls(params: CallHierarchyIncomingCallsParams): CompletableFuture[java.util.List[CallHierarchyIncomingCall]]
  15. def callHierarchyOutgoingCalls(params: CallHierarchyOutgoingCallsParams): CompletableFuture[java.util.List[CallHierarchyOutgoingCall]]
  16. val callHierarchyProvider: CallHierarchyProvider
    Attributes
    protected
  17. def cancel(): Unit
    Definition Classes
    MetalsLspServiceCancelable
  18. def cancelCompile(): Future[Unit]
  19. val cancelables: MutableCancelable
    Attributes
    protected
  20. def cascadeCompile(): Future[Unit]
  21. def check(): Unit
    Attributes
    protected
  22. def chooseClass(uri: String, granurality: ClassFinderGranularity): Future[DecoderResponse]
  23. def cleanCompile(): Future[Unit]
  24. def clearBloopDir(folder: io.AbsolutePath): Unit
    Attributes
    protected
  25. def clearFolders(folders: io.AbsolutePath*): Unit
    Attributes
    protected
  26. val clientConfig: ClientConfiguration
    Definition Classes
    MetalsLspServiceIndexProviders
  27. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  28. def codeAction(params: CodeActionParams): CompletableFuture[java.util.List[CodeAction]]
  29. val codeActionProvider: CodeActionProvider
    Attributes
    protected
  30. def codeActionResolve(params: CodeAction): CompletableFuture[CodeAction]
  31. def codeLens(params: CodeLensParams): CompletableFuture[java.util.List[CodeLens]]
  32. val codeLensProvider: CodeLensProvider
    Attributes
    protected
  33. val compilations: Compilations
  34. val compilers: Compilers
    Attributes
    protected
  35. def completion(params: CompletionParams): CompletableFuture[CompletionList]
  36. def completionItemResolve(item: CompletionItem): CompletableFuture[CompletionItem]
  37. val connectionBspStatus: ConnectionBspStatus
    Attributes
    protected
  38. def copyWorksheetOutput(worksheetPath: io.AbsolutePath): CompletableFuture[AnyRef]
  39. def createDebugSession(target: BuildTargetIdentifier): Future[DebugSession]
  40. def createFile(directoryURI: Option[String], name: Option[String], fileType: Option[String], isScala: Boolean): CompletableFuture[AnyRef]
  41. def debugDiscovery(params: DebugDiscoveryParams): Future[DebugSession]
  42. val debugDiscovery: DebugDiscovery
    Attributes
    protected
  43. val debugProvider: DebugProvider
    Attributes
    protected
  44. def decodeFile(uri: String): Future[DecoderResponse]
  45. def definition(position: TextDocumentPositionParams): CompletableFuture[java.util.List[Location]]
  46. val definitionIndex: OnDemandSymbolIndex
    Definition Classes
    MetalsLspServiceIndexProviders
  47. def definitionOrReferences(positionParams: TextDocumentPositionParams, token: CancelToken = EmptyCancelToken, definitionOnly: Boolean = false): Future[DefinitionResult]

    Returns the definition location or reference locations of a symbol at a given text document position.

    Returns the definition location or reference locations of a symbol at a given text document position. If the symbol represents the definition itself, this method returns the reference locations, otherwise this returns definition location. https://github.com/scalameta/metals/issues/755

  48. val definitionProvider: DefinitionProvider
    Attributes
    protected
  49. def definitionResult(position: TextDocumentPositionParams, token: CancelToken = EmptyCancelToken): Future[DefinitionResult]

    Returns textDocument/definition in addition to the resolved symbol.

    Returns textDocument/definition in addition to the resolved symbol.

    The resolved symbol is used for testing purposes only.

  50. val diagnostics: Diagnostics
    Attributes
    protected
  51. def didChange(params: DidChangeTextDocumentParams): CompletableFuture[Unit]
  52. def didChangeWatchedFiles(events: List[FileEvent]): Future[Unit]
  53. def didClose(params: DidCloseTextDocumentParams): Unit
  54. def didCompileTarget(report: CompileReport): Unit
    Attributes
    protected
  55. def didFocus(uri: String): CompletableFuture[DidFocusResult.Value]
  56. def didOpen(params: DidOpenTextDocumentParams): CompletableFuture[Unit]
  57. def didSave(params: DidSaveTextDocumentParams): CompletableFuture[Unit]
  58. def discoverMainClasses(unresolvedParams: DebugDiscoveryParams): Future[DebugSessionParams]
  59. def discoverTestSuites(uri: Option[String]): Future[List[BuildTargetUpdate]]
  60. val doctor: Doctor
  61. def documentHighlights(params: TextDocumentPositionParams): CompletableFuture[java.util.List[DocumentHighlight]]
  62. def documentSymbol(params: DocumentSymbolParams): CompletableFuture[org.eclipse.lsp4j.jsonrpc.messages.Either[java.util.List[DocumentSymbol], java.util.List[SymbolInformation]]]
  63. val documentSymbolProvider: DocumentSymbolProvider
    Attributes
    protected
  64. val downstreamTargets: PreviouslyCompiledDownsteamTargets
    Attributes
    protected
  65. val embedded: Embedded
    Attributes
    protected
  66. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  67. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  68. var excludedPackageHandler: ExcludedPackagesHandler
  69. def executeCodeActionCommand(params: ExecuteCommandParams, token: CancelToken): Future[Unit]
  70. implicit val executionContext: ExecutionContextExecutorService
    Definition Classes
    MetalsLspServiceIndexProviders
  71. val fileDecoderProvider: FileDecoderProvider
    Attributes
    protected
  72. def fileWatchFilter(path: Path): Boolean

    This filter is an optimization and it is closely related to which files are processed in didChangeWatchedFiles

    This filter is an optimization and it is closely related to which files are processed in didChangeWatchedFiles

    Attributes
    protected
  73. def findBuildTargetByDisplayName(target: String): Option[BuildTarget]
  74. def findTextInDependencyJars(params: FindTextInDependencyJarsRequest): Future[List[Location]]
  75. val findTextInJars: FindTextInDependencyJars
    Attributes
    protected
  76. val fingerprints: MutableMd5Fingerprints
    Attributes
    protected
  77. def focusedDocument: Option[io.AbsolutePath]
    Definition Classes
    MetalsLspServiceIndexProviders
  78. val focusedDocumentBuildTarget: AtomicReference[BuildTargetIdentifier]
    Definition Classes
    MetalsLspServiceIndexProviders
  79. val folder: io.AbsolutePath
    Definition Classes
    MetalsLspServiceIndexProviders
  80. val folderReportsZippper: FolderReportsZippper
  81. def foldingRange(params: FoldingRangeRequestParams): CompletableFuture[java.util.List[FoldingRange]]
  82. val foldingRangeProvider: FoldingRangeProvider
    Attributes
    protected
  83. def formatting(params: DocumentFormattingParams): CompletableFuture[java.util.List[TextEdit]]
  84. val formattingProvider: FormattingProvider
    Attributes
    protected
  85. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  86. def getLocationForSymbol(symbol: String): Option[Location]
  87. def getTastyForURI(uri: URI): Future[Either[String, String]]
  88. def getVisibleName: String
  89. def gotoSupermethod(textDocumentPositionParams: TextDocumentPositionParams): CompletableFuture[AnyRef]
  90. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  91. def hover(params: HoverExtParams): CompletableFuture[Hover]
  92. def implementation(position: TextDocumentPositionParams): CompletableFuture[java.util.List[Location]]
  93. val implementationProvider: ImplementationProvider
    Definition Classes
    MetalsLspServiceIndexProviders
  94. def importAfterScalaCliChanges(servers: Iterable[ScalaCli]): Iterable[Unit]
    Attributes
    protected
  95. def indexSources(): Future[Unit]
  96. var indexingPromise: Promise[Unit]
    Definition Classes
    MetalsLspServiceIndexProviders
  97. def initialized(): Future[Unit]
  98. def inlayHintResolve(inlayHint: InlayHint): CompletableFuture[InlayHint]
  99. val inlayHintResolveProvider: InlayHintResolveProvider
    Attributes
    protected
  100. def inlayHints(params: InlayHintParams): CompletableFuture[java.util.List[InlayHint]]
  101. val interactiveSemanticdbs: InteractiveSemanticdbs
    Attributes
    protected
  102. val isCancelled: AtomicBoolean
  103. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  104. lazy val isMetalsProject: Boolean
    Definition Classes
    Folder
  105. val javaFormattingProvider: JavaFormattingProvider
    Attributes
    protected
  106. val javaHighlightProvider: JavaDocumentHighlightProvider
    Attributes
    protected
  107. def javaHome: Option[String]
  108. val languageClient: ConfiguredLanguageClient
    Definition Classes
    MetalsLspServiceIndexProviders
  109. def loadFingerPrints(): Future[Unit]
    Attributes
    protected
  110. def loadedPresentationCompilerCount(): Int
  111. val mainBuildTargetsData: TargetData
    Attributes
    protected
  112. def mainClassSearch(params: DebugUnresolvedMainClassParams): MainClassSearch
  113. def maybeCompileOnDidFocus(path: io.AbsolutePath, prevBuildTarget: BuildTargetIdentifier): Future[DidFocusResult.Value]
    Attributes
    protected
  114. val mtags: Mtags
    Attributes
    protected
  115. def nameOrUri: String
    Definition Classes
    Folder
  116. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  117. val newFileProvider: NewFileProvider
    Attributes
    protected
  118. def newSymbolIndex(): OnDemandSymbolIndex
    Attributes
    protected
  119. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  120. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  121. def onChange(paths: Seq[io.AbsolutePath]): Future[Unit]
    Attributes
    protected
  122. def onCreate(path: io.AbsolutePath): Unit
    Attributes
    protected
  123. def onDelete(path: io.AbsolutePath): Future[Unit]
    Attributes
    protected
  124. def onShutdown(): Unit
  125. def onTypeFormatting(params: DocumentOnTypeFormattingParams): CompletableFuture[java.util.List[TextEdit]]
  126. val onTypeFormattingProvider: OnTypeFormattingProvider
    Attributes
    protected
  127. def onUserConfigUpdate(newConfig: UserConfiguration): Future[Unit]
  128. def onWorksheetChanged(paths: Seq[io.AbsolutePath]): Future[Unit]
    Attributes
    protected
  129. lazy val optDelegatePath: Option[io.AbsolutePath]

    A workspace folder might be a project reference for an other project.

    A workspace folder might be a project reference for an other project. In that case all its commands will be delegated to the main project's service. We keep the path to main project's root in a dedicated setting, so even before the main project is imported, this folder is known to be a reference.

    Definition Classes
    Folder
  130. def optFileSystemSemanticdbs(): Option[FileSystemSemanticdbs]
  131. def optProjectRoot: Option[io.AbsolutePath]
    Attributes
    protected
  132. val packageProvider: PackageProvider
    Attributes
    protected
  133. val parseTrees: BatchedFunction[io.AbsolutePath, Unit]
  134. def parseTreesAndPublishDiags(paths: Seq[io.AbsolutePath]): Future[Unit]
  135. val path: io.AbsolutePath
    Definition Classes
    Folder
  136. def prepareCallHierarchy(params: CallHierarchyPrepareParams): CompletableFuture[java.util.List[CallHierarchyItem]]
  137. def prepareRename(params: TextDocumentPositionParams): CompletableFuture[org.eclipse.lsp4j.Range]
  138. def projectReferences: List[io.AbsolutePath]
    Definition Classes
    Folder
  139. def rangeFormatting(params: DocumentRangeFormattingParams): CompletableFuture[java.util.List[TextEdit]]
  140. val rangeFormattingProvider: RangeFormattingProvider
    Attributes
    protected
  141. val recentlyOpenedFiles: ActiveFiles
    Attributes
    protected
  142. def references(params: ReferenceParams): CompletableFuture[java.util.List[Location]]
  143. val referencesProvider: ReferenceProvider
    Definition Classes
    MetalsLspServiceIndexProviders
  144. def referencesResult(params: ReferenceParams): Future[List[ReferencesResult]]
  145. def register[T <: Cancelable](cancelable: T): T
  146. def registerNiceToHaveFilePatterns(): Unit
    Attributes
    protected
  147. def rename(params: RenameParams): CompletableFuture[WorkspaceEdit]
  148. val renameProvider: RenameProvider
    Attributes
    protected
  149. implicit val reports: StdReportContext
  150. def resetNotifications(): Future[Unit]
  151. def resetService(): Unit
    Definition Classes
    MetalsLspServiceIndexProviders
  152. def restartCompiler(): Future[Unit]
  153. def runScalafix(uri: String): Future[ApplyWorkspaceEditResponse]
  154. def runScalafixRules(uri: String, rules: List[String]): Future[ApplyWorkspaceEditResponse]
  155. val savedFiles: ActiveFiles
    Attributes
    protected
  156. val scalaCli: ScalaCliServers
  157. val scalaVersionSelector: ScalaVersionSelector
    Definition Classes
    MetalsLspServiceIndexProviders
  158. val scalafixProvider: ScalafixProvider
    Attributes
    protected
  159. def selectionRange(params: SelectionRangeParams): CompletableFuture[java.util.List[SelectionRange]]
  160. val semanticDBIndexer: SemanticdbIndexer
    Definition Classes
    MetalsLspServiceIndexProviders
  161. def semanticTokensFull(params: SemanticTokensParams): CompletableFuture[SemanticTokens]

    Requesting semantic tokens for a whole file in order to highlight

    Requesting semantic tokens for a whole file in order to highlight

    Definition Classes
    MetalsLspServiceTextDocumentService
  162. def setUserConfig(newConfig: UserConfiguration): UserConfiguration
  163. val sh: ScheduledExecutorService
    Definition Classes
    MetalsLspServiceIndexProviders
  164. def signatureHelp(params: TextDocumentPositionParams): CompletableFuture[SignatureHelp]
  165. val sourceMapper: SourceMapper
    Definition Classes
    MetalsLspServiceIndexProviders
  166. val stacktraceAnalyzer: StacktraceAnalyzer
  167. def startDebugProvider(params: DebugSessionParams): Future[DebugSession]
  168. def startScalaCli(path: io.AbsolutePath): Future[Unit]
  169. def startTestSuite(target: BuildTarget, params: ScalaTestSuitesDebugRequest): Future[DebugSession]
  170. val statusBar: StatusBar
    Definition Classes
    MetalsLspServiceIndexProviders
  171. def stopScalaCli(): Future[Unit]
  172. def superMethodHierarchy(textDocumentPositionParams: TextDocumentPositionParams): CompletableFuture[AnyRef]
  173. val supermethods: Supermethods
    Attributes
    protected
  174. def supportsBuildTarget(target: BuildTargetIdentifier): Option[BuildTarget]
  175. val symbolDocs: Docstrings
    Definition Classes
    MetalsLspServiceIndexProviders
  176. val symbolHierarchyOps: SymbolHierarchyOps
    Attributes
    protected
  177. val symbolSearch: MetalsSymbolSearch
    Attributes
    protected
  178. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  179. val tables: Tables
    Definition Classes
    MetalsLspServiceIndexProviders
  180. def testClassSearch(params: DebugUnresolvedTestClassParams): TestClassSearch
  181. val testProvider: TestSuitesProvider
    Attributes
    protected
  182. val timerProvider: TimerProvider
    Definition Classes
    MetalsLspServiceIndexProviders
  183. def toString(): String
    Definition Classes
    AnyRef → Any
  184. val trees: Trees
    Attributes
    protected
  185. def typeDefinition(position: TextDocumentPositionParams): CompletableFuture[java.util.List[Location]]
  186. var userConfig: UserConfiguration
    Definition Classes
    MetalsLspServiceIndexProviders
  187. val userConfigPromise: Promise[Unit]
    Attributes
    protected
  188. val visibleName: Option[String]
    Definition Classes
    Folder
  189. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  190. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  191. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  192. def warnings: Warnings
    Attributes
    protected
  193. val wasInitialized: AtomicBoolean
  194. def willRenameFile(oldPath: io.AbsolutePath, newPath: io.AbsolutePath): Future[WorkspaceEdit]
  195. val workDoneProgress: WorkDoneProgress
    Definition Classes
    MetalsLspServiceIndexProviders
  196. val worksheetProvider: WorksheetProvider
  197. def workspaceSymbol(query: String): Seq[SymbolInformation]
  198. def workspaceSymbol(params: WorkspaceSymbolParams, token: CancelToken): Future[List[SymbolInformation]]
  199. val workspaceSymbols: WorkspaceSymbolProvider
    Definition Classes
    MetalsLspServiceIndexProviders

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from IndexProviders

Inherited from TextDocumentService

Inherited from Cancelable

Inherited from Folder

Inherited from AnyRef

Inherited from Any

Ungrouped