scala.tools.nsc

interpreter

package interpreter

The main REPL related classes and values are as follows. In addition to standard compiler classes Global and Settings, there are:

History: an interface for session history. Completion: an interface for tab completion. ILoop (formerly InterpreterLoop): The umbrella class for a session. IMain (formerly Interpreter): Handles the evolving state of the session and handles submitting code to the compiler and handling the output. InteractiveReader: how ILoop obtains input. History: an interface for session history. Completion: an interface for tab completion. Power: a repository for more advanced/experimental features.

ILoop contains { in: InteractiveReader, intp: IMain, settings: Settings, power: Power } InteractiveReader contains { history: History, completion: Completion } IMain contains { global: Global }

Visibility
  1. Public
  2. All

Type Members

  1. class AbstractFileClassLoader extends ClassLoader with ScalaClassLoader

    A class loader that loads files from a scala.tools.nsc.io.AbstractFile.

  2. class AbstractOrMissingHandler[T] extends PartialFunction[Throwable, T]

  3. trait CodeHandlers[T] extends AnyRef

    The start of a simpler interface for utilizing the compiler with piecemeal code strings.

  4. class CommandLine extends CompilerCommand

    A command line for the interpreter.

  5. trait Completion extends AnyRef

    An implementation-agnostic completion interface which makes no reference to the jline classes.

  6. trait CompletionAware extends AnyRef

    An interface for objects which are aware of tab completion and will supply their own candidates and resolve their own paths.

  7. trait CompletionOutput extends AnyRef

    This has a lot of duplication with other methods in Symbols and Types, but repl completion utility is very sensitive to precise output.

  8. trait ConsoleReaderHelper extends ConsoleReader

  9. trait Delimited extends AnyRef

  10. trait Dossiers extends AnyRef

  11. trait Eval extends AnyRef

  12. trait ExprTyper extends AnyRef

  13. trait Formatting extends AnyRef

  14. class ILoop extends LoopCommands with ILoopInit

    The Scala interactive shell.

  15. trait ILoopInit extends AnyRef

    Machinery for the asynchronous initialization of the repl.

  16. class IMain extends Imports

    An interpreter for Scala code.

  17. class ISettings extends AnyRef

    Settings for the interpreter

  18. trait Imports extends AnyRef

  19. type InputStream = InputStream

    Definition Classes
    package
  20. trait InteractiveReader extends AnyRef

    Reads lines from an input stream

  21. type JClass = java.lang.Class[_]

    Definition Classes
    package
  22. type JCollection[T] = Collection[T]

    Definition Classes
    package
  23. type JFile = File

    Definition Classes
    package
  24. class JLineCompletion extends Completion with CompletionOutput

  25. class JLineDelimiter extends ArgumentDelimiter

  26. class JLineReader extends InteractiveReader

    Reads from the console using JLine.

  27. type JList[T] = List[T]

    Definition Classes
    package
  28. type JPrintWriter = PrintWriter

    Definition Classes
    package
  29. case class KeyBinding(name: String, code: Int, aliases: List[String], description: String) extends Product with Serializable

  30. class Line[+T] extends AnyRef

    Encapsulation of a single line in the repl.

  31. trait Logger extends AnyRef

  32. trait LoopCommands extends AnyRef

  33. trait MemberHandlers extends AnyRef

  34. trait NamedParam extends AnyRef

  35. case class NamedParamClass(name: String, tpe: String, value: Any) extends NamedParam with Product with Serializable

  36. trait NamedParamCreator extends AnyRef

  37. trait Naming extends AnyRef

    This is for name logic which is independent of the compiler (notice there's no Global.

  38. type OutputStream = OutputStream

    Definition Classes
    package
  39. class Parsed extends Delimited

    One instance of a command buffer.

  40. abstract class Pasted extends AnyRef

    If it looks like they're pasting in a scala interpreter transcript, remove all the formatting we inserted so we can make some sense of it.

  41. trait Phased extends AnyRef

    Mix this into an object and use it as a phasing swiss army knife.

  42. abstract class Power extends SharesGlobal

    A class for methods to be injected into the intp in power mode.

  43. class ProcessResult extends AnyRef

  44. class ProductCompletion extends CompletionAware

    TODO - deal with non-case products by giving them _1 _2 etc.

  45. trait ReplConfig extends AnyRef

  46. class ReplProps extends AnyRef

  47. class ReplReporter extends ConsoleReporter

  48. trait ReplStrings extends AnyRef

  49. final class ReplVals extends AnyRef

  50. class RichClass[T] extends AnyRef

  51. class SeqCompletion[T] extends CompletionAware

  52. trait SharesGlobal extends AnyRef

  53. class SimpleReader extends InteractiveReader

    Reads using standard JDK API

  54. class TapMaker[T] extends AnyRef

  55. trait TypeStrings extends AnyRef

    Logic for turning a type into a String.

  56. class XMLCompletion extends CompletionAware

Value Members

  1. object AbstractOrMissingHandler extends AnyRef

  2. object ByteCode extends AnyRef

  3. object CodeHandlers extends AnyRef

  4. object Completion extends AnyRef

  5. object CompletionAware extends AnyRef

  6. object FileCompletion extends AnyRef

    This isn't 100% clean right now, but it works and is simple.

  7. object ILoop extends AnyRef

  8. object IMain extends AnyRef

    Utility methods for the Interpreter.

  9. val IR: scala.tools.nsc.interpreter.Results.type

    Definition Classes
    package
  10. object InteractiveReader extends AnyRef

  11. object KeyBinding extends Serializable

  12. object Line extends AnyRef

  13. object NamedParam extends NamedParamCreator

  14. object NoCompletion extends Completion

  15. object Parsed extends AnyRef

  16. object Power extends AnyRef

  17. object ProcessResult extends AnyRef

  18. object ProductCompletion extends AnyRef

  19. object ReplPropsKludge extends AnyRef

  20. object Results extends AnyRef

  21. object Runner extends AnyRef

  22. object SimpleReader extends AnyRef

  23. object TypeStrings extends TypeStrings

  24. object XMLCompletion extends AnyRef

  25. def any2stringOf(x: Any, maxlen: Int): String

    Definition Classes
    ReplStrings
  26. def isQuoted(s: String): Boolean

    Definition Classes
    ReplStrings
  27. def isReplDebug: Boolean

    Definition Classes
    ReplConfig
  28. def isReplInfo: Boolean

    Definition Classes
    ReplConfig
  29. def isReplPower: Boolean

    Definition Classes
    ReplConfig
  30. def isReplTrace: Boolean

    Definition Classes
    ReplConfig
  31. def longestCommonPrefix(xs: List[String]): String

    Definition Classes
    ReplStrings
  32. lazy val replProps: ReplProps

    Definition Classes
    ReplConfig
  33. package session

    Files having to do with the state of a repl session: lines of text entered, types and terms defined, etc.

  34. def string2code(str: String): String

    Convert a string into code that can recreate the string.

    Convert a string into code that can recreate the string. This requires replacing all special characters by escape codes. It does not add the surrounding " marks.

    Definition Classes
    ReplStrings
  35. def string2codeQuoted(str: String): String

    Definition Classes
    ReplStrings
  36. def words(s: String): List[String]

    Definition Classes
    ReplStrings