Evaluates already-compiled Bytecode.
Evaluates already-compiled Bytecode.
Deals with all the munging of Classloaders, Class[_] objects,
and Array[Byte]s representing class files, and reflection necessary
to take the already-compile Scala bytecode and execute it in our process.
Try to load resources from two parents; necessary to get Ammonite's source code browsing to work in SBT projects because SBT messes up the context classloader https://stackoverflow.com/q/44237791/871202
Represents a single "frame" of the sess.save/sess.load stack/tree.
Represents a single "frame" of the sess.save/sess.load stack/tree.
Exposes imports and classpath as readable but only writable
in particular ways: imports can only be updated via mergeImports,
while classpath can only be added to.
An extensible hook into the Ammonite REPL's import system; allows the end
user to hook into import $foo.bar.{baz, qux => qua} syntax, and in
response load jars or process source files before the "current" compilation
unit is run.
An extensible hook into the Ammonite REPL's import system; allows the end
user to hook into import $foo.bar.{baz, qux => qua} syntax, and in
response load jars or process source files before the "current" compilation
unit is run. Can be used to load script files, ivy dependencies, jars, or
files from the web.
Classloader used to implement the jar-downloading command-evaluating logic in Ammonite.
Classloader used to implement the jar-downloading command-evaluating logic in Ammonite.
http://stackoverflow.com/questions/3544614/how-is-the-control-flow-to-findclass-of
Trait for the interface of common persistent storage.
Trait for the interface of common persistent storage. This handles history and persistent caches. Right now it is not threadsafe nor does it handle the mutual exclusion of files between processes. Mutexes should be added to be able to run multiple Ammonite processes on the same system.
Loads the jars that make up the classpath of the scala-js-fiddle compiler and re-shapes it into the correct structure to satisfy scala-compile and scalajs-tools
What actually lets us compile and execute code in the Ammonite REPL; deals with the Scala compiler, preprocessing the strings, JVM classloaders, etc.