Models a binding of a value to a typed name, and is passed into the REPL so it can re-create the bindings inside the REPL's scope
Fake for-comprehension generator to catch errors and turn them into Res.Failures
A set of colors used to highlight the miscellanious bits of the REPL.
Exception for reporting script compilation failures
Represents the importing of a single name in the Ammonite REPL, of the form
Represents the importing of a single name in the Ammonite REPL, of the form
import $prefix.{$fromName => $toName}
All imports are reduced to this form; import $prefix.$name
is results in
the fromName
and toName
being the same, while import $prefix._
or
import $prefix.{foo, bar, baz}
are split into multiple distinct
ImportData objects.
Note that imports can be of one of three distinct ImportType
s: importing
a type, a term, or both. This lets us properly deal with shadowing correctly
if we import the type and term of the same name from different places
Represents the imports that occur before a piece of user code in the Ammonite REPL.
Represents the imports that occur before a piece of user code in the
Ammonite REPL. It's basically a Seq[ImportData]
, except we really want
it to be always in a "canonical" form without shadowed/duplicate imports.
Thus we only expose an apply
method which performs this de-duplication,
and a ++
operator that combines two sets of imports while performing
de-duplication.
Represents a single identifier in Scala source code, e.g.
Represents a single identifier in Scala source code, e.g. "scala" or
"println" or "Hello-World
".
Holds the value "raw", with all special characters intact, e.g.
"Hello-World". Can be used backticked e.g. "Hello-World
", useful for
embedding in Scala source code, or encoded e.g. "Hello$minusWorld",
useful for accessing names as-seen-from the Java/JVM side of thigns
Encapsulates the ways the Ammonite REPL prints things.
Encapsulates the ways the Ammonite REPL prints things. Does not print a trailing newline by default; you have to add one yourself.
How you want it to print streaming fragments of stdout
How you want it to print a compile warning
How you want it to print a compile error
How you want to print compile info logging. *Not* the same
as out
, which is used to print runtime output.
The result of a single pass through the ammonite REPL.
The result of a single pass through the ammonite REPL. Results in a single T, or of one of a fixed number of failures that are common for anyone who is evaluating code via the REPL.
Encapsulates a read-write cell that can be passed around
Nice pattern matching for chained exceptions
A set of colors used to highlight the miscellanious bits of the REPL. Re-used all over the place in PPrint, TPrint, syntax highlighting, command-echoes, etc. in order to keep things consistent
The command prompt
Definition of top-level identifiers
Strings, integers and other literal expressions
The Seq/Foo when printing a Seq(...) or case class Foo(...)
The color of text selected in the line-editor
The color used to print error messages of all kinds