package core

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. class Analyzer extends Actor with Stash with ActorLogging with RefactoringHandler
  2. class AnalyzerManager extends Actor with ActorLogging with Stash
  3. 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 (not tell). NOTE: although undocumented, subscribing to a trait 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.

  4. final case class CompilerFatalError (e: Throwable) extends Product with Serializable
  5. trait CompletionControl extends AnyRef
  6. trait DocFinding extends AnyRef
  7. 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.

  8. trait DocJarReading extends AnyRef
  9. class DocResolver extends Actor with ActorLogging with DocUsecaseHandling with DocResolverBackCompat
  10. trait DocResolverBackCompat extends AnyRef
  11. final case class DocSig (fqn: DocFqn, member: Option[String]) extends Product with Serializable
  12. 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.

  13. trait DocUsecaseHandling extends AnyRef
  14. abstract class ExpandMatchCases extends MultiStageRefactoring with TreeAnalysis with Indexes with TreeFactory with InteractiveScalaCompiler
  15. class FloodGate extends Actor with ActorLogging with Stash

    Holds messages until an Activate is received.

  16. trait FqnToSymbol extends AnyRef

    The inverse of SymbolToFqn

  17. trait Helpers extends AnyRef
  18. class ImplicitAnalyzer extends AnyRef
  19. class Indexer extends Actor with ActorLogging
  20. class JavaAnalyzer extends Actor with Stash with ActorLogging
  21. trait PositionBackCompat extends AnyRef
  22. class PositionLocator extends CompilerAccess with EnrichedTrees
  23. 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.

  24. class Project extends Actor with ActorLogging with Stash

    The Project actor simply forwards messages coming from the user to the respective subcomponent.

  25. trait Protocol extends AnyRef

    Provides a generic message encoding/dblocking I/O API for reading and writing to the wire.

  26. trait RefactoringControl extends AnyRef
  27. abstract class RefactoringEnvironment extends AnyRef
  28. trait RefactoringHandler extends AnyRef
  29. trait RefactoringImpl extends AnyRef
  30. trait RichCompilerControl extends CompilerControl with RefactoringControl with CompletionControl with DocFinding
  31. class RichPresentationCompiler extends Global with ModelBuilders with RichCompilerControl with RefactoringImpl with Helpers with PresentationCompilerBackCompat with PositionBackCompat with StructureViewBuilder with SymbolToFqn with FqnToSymbol with TypeToScalaName
  32. final class ScalaName extends AnyVal

    Type safety around Scala type names, scalac uses raw Strings.

  33. trait ScalapSymbolToFqn extends AnyRef
  34. class SemanticHighlighting extends CompilerAccess with EnrichedTrees
  35. final case class ShutdownRequest (reason: String, isError: Boolean = false) extends Product with Serializable
  36. trait StructureViewBuilder extends AnyRef
  37. 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 a Symbols.Symbol to a scalasig.Symbol would involve invoking the Pickler 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).

  38. final case class TypeCompletionsReq (prefix: String, maxResults: Int) extends Product with Serializable
  39. trait TypeToScalaName extends AnyRef

Value Members

  1. object Analyzer
  2. object AnalyzerManager
  3. object Broadcaster
  4. object Canon extends Poly1

    Goes through sealed families and gets the canonical path of File and Path instances.

    Goes through sealed families and gets the canonical path of File and Path instances.

    Not to be confused with "the other" Cannon ;-)

  5. object Canonised
  6. object CompletionUtil
  7. object DocJarReading
  8. object DocResolver
  9. object FloodGate
  10. object Indexer
  11. object JavaAnalyzer
  12. object Keywords
  13. object Project
  14. object ScalaSigApi

Ungrouped