ReplDriverBase
Attributes
- Graph
-
- Supertypes
- Known subtypes
-
class ReplDriver
Members list
Value members
Concrete methods
Inherited methods
Attributes
- Inherited from:
- DottyReplDriver
Attributes
- Definition Classes
-
DottyReplDriver -> Driver
- Inherited from:
- DottyReplDriver
Extract possible completions at the index of cursor
in expr
Extract possible completions at the index of cursor
in expr
Attributes
- Inherited from:
- DottyReplDriver
the initial, empty state of the REPL session
Attributes
- Inherited from:
- DottyReplDriver
Attributes
- Inherited from:
- Driver
Entry point to the compiler using a custom Context
.
Entry point to the compiler using a custom Context
.
In most cases, you do not need a custom Context
and should instead use one of the other overloads of process
. However, the other overloads cannot be overridden, instead you should override this one which they call internally.
Usage example: https://github.com/scala/scala3/tree/master/compiler/test/dotty/tools/dotc/EntryPointsTest.scala.disabled in method runCompilerWithContext
Value parameters
- args
-
Arguments to pass to the compiler.
- rootCtx
-
The root Context to use.
Attributes
- Returns
-
The
Reporter
used. UseReporter#hasErrors
to check if compilation succeeded. - Inherited from:
- Driver
Entry point to the compiler with no optional arguments.
Entry point to the compiler with no optional arguments.
This overload is provided for compatibility reasons: the RawCompiler
of sbt expects this method to exist and calls it using reflection. Keeping it means that we can change the other overloads without worrying about breaking compatibility with sbt.
Attributes
- Inherited from:
- Driver
Principal entry point to the compiler.
Principal entry point to the compiler.
Usage example: https://github.com/scala/scala3/tree/master/compiler/test/dotty/tools/dotc/EntryPointsTest.scala.disabled in method runCompiler
Value parameters
- args
-
Arguments to pass to the compiler.
- callback
-
Used to execute custom code during the compilation process. No callbacks will be executed if this is
null
. - reporter
-
Used to log errors, warnings, and info messages. The default reporter is used if this is
null
.
Attributes
- Returns
-
The
Reporter
used. UseReporter#hasErrors
to check if compilation succeeded. - Inherited from:
- Driver
Entry point to the compiler that can be conveniently used with Java reflection.
Entry point to the compiler that can be conveniently used with Java reflection.
This entry point can easily be used without depending on the dotty
package, you only need to depend on dotty-interfaces
and call this method using reflection. This allows you to write code that will work against multiple versions of dotty without recompilation.
The trade-off is that you can only pass a SimpleReporter to this method and not a normal Reporter which is more powerful.
Usage example: https://github.com/scala/scala3/tree/master/compiler/test/dotty/tools/dotc/InterfaceEntryPointTest.scala
Value parameters
- args
-
Arguments to pass to the compiler.
- callback
-
Used to execute custom code during the compilation process. No callbacks will be executed if this is
null
. - simple
-
Used to log errors, warnings, and info messages. The default reporter is used if this is
null
.
Attributes
- Inherited from:
- Driver
Controls whether the System.out
and System.err
streams are set to the provided constructor parameter instance of java.io.PrintStream during the execution of the repl. On by default.
Controls whether the System.out
and System.err
streams are set to the provided constructor parameter instance of java.io.PrintStream during the execution of the repl. On by default.
Disabling this can be beneficial when executing a repl instance inside a concurrent environment, for example a thread pool (such as the Scala compile server in the Scala Plugin for IntelliJ IDEA).
In such environments, indepently executing System.setOut
and System.setErr
without any synchronization can lead to unpredictable results when restoring the original streams (dependent on the order of execution), leaving the Java process in an inconsistent state.
Attributes
- Inherited from:
- DottyReplDriver
Reset state of repl to the initial state
Reset state of repl to the initial state
This method is responsible for performing an all encompassing reset. As such, when the user enters :reset
this method should be called to reset everything properly
Attributes
- Inherited from:
- DottyReplDriver
Attributes
- Inherited from:
- DottyReplDriver
Attributes
- Inherited from:
- DottyReplDriver
Attributes
- Inherited from:
- DottyReplDriver
Run REPL with state
until :quit
command found
Run REPL with state
until :quit
command found
This method is the main entry point into the REPL. Its effects are not observable outside of the CLI, for this reason, most helper methods are protected final
to facilitate testing.
Attributes
- Inherited from:
- DottyReplDriver
Setup context with initialized settings from CLI arguments, then check if there are any settings that would change the default behaviour of the compiler.
Setup context with initialized settings from CLI arguments, then check if there are any settings that would change the default behaviour of the compiler.
Attributes
- Returns
-
If there is no setting like
-help
preventing us from continuing compilation, this method returns a list of files to compile and an updated Context. If compilation should be interrupted, this method returns None. - Inherited from:
- Driver
Overridden to false
in order to not have to give sources on the commandline
Overridden to false
in order to not have to give sources on the commandline
Attributes
- Definition Classes
-
DottyReplDriver -> Driver
- Inherited from:
- DottyReplDriver
Try to run REPL if there is nothing that prevents us doing so.
Try to run REPL if there is nothing that prevents us doing so.
Possible reason for unsuccessful run are raised flags in CLI like --help or --version
Attributes
- Inherited from:
- DottyReplDriver
Inherited fields
Attributes
- Inherited from:
- DottyReplDriver