package core
- Alphabetic
- Public
- All
Type Members
- class Analyzer extends Actor with Stash with ActorLogging with RefactoringHandler
- class AnalyzerManager extends Actor with ActorLogging with Stash
-
class
Broadcaster
extends Actor with ActorLogging
An actor that will forward all received messages onto actors that have registered to receive messages.
An actor that will forward all received messages onto actors that have registered to receive messages. Messages wrapped with
Persist
will be held and sent to all new subscribers (to cater for legacy EnsimeEvents that older clients expect to see on startup).To avoid memory leaks, non-restarting Actors should unregister when they stop. Additional register requests for the same actor will result in all Persist messages being sent again.
It feels crazy to be writing this because it seems like something that should be in a standard library:
1. the
EventStream
very nearly does what we want but doesn't retain information about the sender and uses method calls (nottell
). NOTE: although undocumented, subscribing to atrait
will subscribe to implementations.2. the
PubSub
requires named subscriptions and requires non-tell
boilerplate on both publisher and subscriber side (although has the advantage of better networked behaviour).3. neither Akka solution has the concept of the "Persist" message.
- final case class CompilerFatalError (e: Throwable) extends Product with Serializable
- trait CompletionControl extends AnyRef
- trait DocFinding extends AnyRef
-
final
case class
DocFqn
(pack: String, typeName: String) extends Product with Serializable
Information necessary to create a javadoc or scaladoc URI for a particular type or type member.
- trait DocJarReading extends AnyRef
- class DocResolver extends Actor with ActorLogging with DocUsecaseHandling with DocResolverBackCompat
- trait DocResolverBackCompat extends AnyRef
- final case class DocSig (fqn: DocFqn, member: Option[String]) extends Product with Serializable
-
final
case class
DocSigPair
(scala: DocSig, java: DocSig) extends Product with Serializable
We generate DocSigs for java and scala at the same time, since we don't know a priori whether the docs will be in scaladoc or javadoc format.
- trait DocUsecaseHandling extends AnyRef
- abstract class ExpandMatchCases extends MultiStageRefactoring with TreeAnalysis with Indexes with TreeFactory with InteractiveScalaCompiler
-
class
FloodGate
extends Actor with ActorLogging with Stash
Holds messages until an Activate is received.
-
trait
FqnToSymbol
extends AnyRef
The inverse of SymbolToFqn
- trait Helpers extends AnyRef
- class ImplicitAnalyzer extends AnyRef
- class Indexer extends Actor with ActorLogging
- class JavaAnalyzer extends Actor with Stash with ActorLogging
- trait PositionBackCompat extends AnyRef
- class PositionLocator extends CompilerAccess with EnrichedTrees
-
trait
PresentationCompilerBackCompat
extends AnyRef
Simulate methods that were added in later versions of the scalac API, or to generate fake methods that we can use in both versions.
-
class
Project
extends Actor with ActorLogging with Stash
The Project actor simply forwards messages coming from the user to the respective subcomponent.
-
trait
Protocol
extends AnyRef
Provides a generic message encoding/dblocking I/O API for reading and writing to the wire.
- trait RefactoringControl extends AnyRef
- abstract class RefactoringEnvironment extends AnyRef
- trait RefactoringHandler extends AnyRef
- trait RefactoringImpl extends AnyRef
- trait RichCompilerControl extends CompilerControl with RefactoringControl with CompletionControl with DocFinding
- class RichPresentationCompiler extends Global with ModelBuilders with RichCompilerControl with RefactoringImpl with Helpers with PresentationCompilerBackCompat with PositionBackCompat with StructureViewBuilder with SymbolToFqn with FqnToSymbol with TypeToScalaName
-
final
class
ScalaName
extends AnyVal
Type safety around Scala type names, scalac uses raw Strings.
- trait ScalapSymbolToFqn extends AnyRef
- class SemanticHighlighting extends CompilerAccess with EnrichedTrees
- final case class ShutdownRequest (reason: String, isError: Boolean = false) extends Product with Serializable
- trait StructureViewBuilder extends AnyRef
-
trait
SymbolToFqn
extends AnyRef
Resolves scalac
scala.reflect.internal.Symbols.Symbol
to Java bytecode FQNs (including descriptors for methods).Resolves scalac
scala.reflect.internal.Symbols.Symbol
to Java bytecode FQNs (including descriptors for methods).Note this does not work for
scala.tools.scalap.scalax.rules.scalasig.Symbol
which must be handled separately (going from aSymbols.Symbol
to ascalasig.Symbol
would involve invoking thePickler
phase - which we can't do - to generate a byte array that could be reparsed by scalap).See also
DocFinding.javaFqnString
(which should be rewritten to use this). - final case class TypeCompletionsReq (prefix: String, maxResults: Int) extends Product with Serializable
- trait TypeToScalaName extends AnyRef
Value Members
- object Analyzer
- object AnalyzerManager
- object Broadcaster
-
object
Canon
extends Poly1
Goes through sealed families and gets the canonical path of
File
andPath
instances.Goes through sealed families and gets the canonical path of
File
andPath
instances.Not to be confused with "the other" Cannon ;-)
- object Canonised
- object CompletionUtil
- object DocJarReading
- object DocResolver
- object FloodGate
- object Indexer
- object JavaAnalyzer
- object Keywords
- object Project
- object ScalaSigApi