class Request extends AnyRef
One line of code submitted by the user for interpretation
- Source
- IMain.scala
- Alphabetic
- By Inheritance
- Request
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Request(line: String, trees: List[Global.Tree], generousImports: Boolean = false)
Type Members
- class ClassBasedWrapper extends Wrapper
- class ObjectBasedWrapper extends Wrapper
-
abstract
class
Wrapper extends CodeAssembler[(memberHandlers)#MemberHandler]
generate the source code for the object that computes this request
Value Members
-
lazy val
accessPath: String
Code to import bound names from previous lines - accessPath is code to append to objectName to access anything bound by request.
- def applyToResultMember[T](name: Global.Name, f: (Global.Symbol) ⇒ T): T
-
lazy val
compile: Boolean
Compile the object file.
Compile the object file. Returns whether the compilation succeeded. If all goes well, the "types" map is computed.
-
lazy val
compilerTypeOf: Map[Global.Name, Global.Type]
Types of variables defined by this request.
- def defHandlers: collection.immutable.List[(memberHandlers)#MemberDefHandler]
- lazy val definedSymbols: Map[Global.Name, Global.Symbol]
- def defines: collection.immutable.List[Global.Symbol]
- val definesClass: Boolean
-
def
fullAccessPath: String
The path of the value that contains the user code.
-
def
fullPath(vname: String): String
The path of the given member of the wrapping instance.
-
val
handlers: List[(memberHandlers)#MemberHandler]
handlers for each tree in this request
-
lazy val
headerPreamble: String
Code to import bound names from previous lines - accessPath is code to append to objectName to access anything bound by request.
- def importedSymbols: collection.immutable.List[Global.Symbol]
- def imports: collection.immutable.List[Global.Symbol]
-
lazy val
importsPreamble: String
Code to import bound names from previous lines - accessPath is code to append to objectName to access anything bound by request.
-
lazy val
importsTrailer: String
Code to import bound names from previous lines - accessPath is code to append to objectName to access anything bound by request.
- val line: String
- val lineRep: ReadEvalPrint
-
def
loadAndRun: (String, Boolean)
load and run the code using reflection
- def lookupTypeOf(name: Global.Name): String
- def originalLine: String
-
val
referencedNames: List[Global.Name]
list of names used by this expression
- lazy val resultSymbol: Global.Symbol
-
def
termNames: collection.immutable.List[Global.TermName]
def and val names
-
def
toCompute: String
the line of code to compute
-
def
toString(): String
- Definition Classes
- Request → AnyRef → Any
- val trees: List[Global.Tree]
- def typeNames: collection.immutable.List[Global.TypeName]
-
lazy val
typeOf: Map[Global.Name, String]
String representations of same.
- lazy val typesOfDefinedTerms: Map[Global.Name, Global.Type]
- def value: Global.Symbol
- def withOriginalLine(s: String): Request.this.type
The Scala compiler and reflection APIs.