object Trees
- Alphabetic
- By Inheritance
- Trees
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
Apply(fun: Tree, args: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable
Syntactic apply.
Syntactic apply. It is a method call if fun is a dot-select or bracket-select. It is a function call otherwise.
- case class ArrayConstr(items: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable
- case class Assign(lhs: Tree, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class BigIntLiteral(value: BigInt)(implicit pos: Position) extends Tree with Literal with Product with Serializable
-
case class
BinaryOp(op: Code, lhs: Tree, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable
Binary operation (always preserves pureness).
Binary operation (always preserves pureness).
Operations which do not preserve pureness are not allowed in this tree. These are notably +=, -=, *=, /= and %=
- class Block extends Tree
- case class BooleanLiteral(value: Boolean)(implicit pos: Position) extends Tree with Literal with Product with Serializable
- case class BracketSelect(qualifier: Tree, item: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class Break(label: Option[Ident] = None)(implicit pos: Position) extends Tree with Product with Serializable
- case class ClassDef(className: Option[Ident], parentClass: Option[Tree], members: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable
- case class ComputedName(tree: Tree) extends PropertyName with Product with Serializable
- case class Continue(label: Option[Ident] = None)(implicit pos: Position) extends Tree with Product with Serializable
- case class Debugger()(implicit pos: Position) extends Tree with Product with Serializable
- case class Delete(prop: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class DoWhile(body: Tree, cond: Tree, label: Option[Ident] = None)(implicit pos: Position) extends Tree with Product with Serializable
- case class DocComment(text: String)(implicit pos: Position) extends Tree with Product with Serializable
- case class DotSelect(qualifier: Tree, item: Ident)(implicit pos: Position) extends Tree with Product with Serializable
- case class DoubleLiteral(value: Double)(implicit pos: Position) extends Tree with Literal with Product with Serializable
-
case class
Export(bindings: List[(Ident, ExportName)])(implicit pos: Position) extends Tree with Product with Serializable
export
statement.export
statement.This corresponds to the following syntax:
export { <binding1_1> as <binding1_2>, ..., <bindingN_1> as <bindingN_2> }
The
_1
parts of bindings are therefore the identifiers from the current module that are exported. The_2
parts are the names under which they are exported to other modules. -
case class
ExportName(name: String)(implicit pos: Position) extends Product with Serializable
The name of an ES module export.
The name of an ES module export.
It must be a valid
IdentifierName
, as tested by ExportName.isValidExportName. - case class For(init: Tree, guard: Tree, update: Tree, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class ForIn(lhs: Tree, obj: Tree, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class Function(arrow: Boolean, args: List[ParamDef], body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class FunctionDef(name: Ident, args: List[ParamDef], body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class GetterDef(static: Boolean, name: PropertyName, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class Ident(name: String, originalName: Option[String])(implicit pos: Position) extends PropertyName with Product with Serializable
- case class If(cond: Tree, thenp: Tree, elsep: Tree)(implicit pos: Position) extends Tree with Product with Serializable
-
case class
Import(bindings: List[(ExportName, Ident)], from: StringLiteral)(implicit pos: Position) extends Tree with Product with Serializable
import
statement, except namespace import.import
statement, except namespace import.This corresponds to the following syntax:
import { <binding1_1> as <binding1_2>, ..., <bindingN_1> as <bindingN_2> } from <from>
The
_1
parts of bindings are therefore the identifier names that are imported, as specified inexport
clauses of the module. The_2
parts are the names under which they are imported in the current module.Special cases:
- When
_1.name == _2.name
, there is shorter syntax in ES, i.e.,import { binding } from 'from'
. - When
_1.name == "default"
, it is equivalent to a default import.
- When
-
case class
ImportNamespace(binding: Ident, from: StringLiteral)(implicit pos: Position) extends Tree with Product with Serializable
Namespace
import
statement.Namespace
import
statement.This corresponds to the following syntax:
import * as <binding> from <from>
-
case class
IncDec(prefix: Boolean, inc: Boolean, arg: Tree)(implicit pos: Position) extends Tree with Product with Serializable
++x
,x++
,--x
orx--
. - case class IntLiteral(value: Int)(implicit pos: Position) extends Tree with Literal with Product with Serializable
- case class Labeled(label: Ident, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
-
case class
Let(name: Ident, mutable: Boolean, rhs: Option[Tree])(implicit pos: Position) extends Tree with LocalDef with Product with Serializable
ES6 let or const (depending on the mutable flag).
-
sealed
trait
Literal extends Tree
Marker for literals.
Marker for literals. Literals are always pure.
- sealed trait LocalDef extends Tree
- case class MethodDef(static: Boolean, name: PropertyName, args: List[ParamDef], body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class New(ctor: Tree, args: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable
- case class Null()(implicit pos: Position) extends Tree with Literal with Product with Serializable
- case class ObjectConstr(fields: List[(PropertyName, Tree)])(implicit pos: Position) extends Tree with Product with Serializable
- case class ParamDef(name: Ident, rest: Boolean)(implicit pos: Position) extends Tree with LocalDef with Product with Serializable
- sealed trait PropertyName extends AnyRef
- case class Return(expr: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class SetterDef(static: Boolean, name: PropertyName, param: ParamDef, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class Skip()(implicit pos: Position) extends Tree with Product with Serializable
-
case class
Spread(items: Tree)(implicit pos: Position) extends Tree with Product with Serializable
...items
, the "spread" operator of ECMAScript 6....items
, the "spread" operator of ECMAScript 6.It is only valid in ECMAScript 6, in the
args
/items
of a New, Apply, or ArrayConstr.- items
An iterable whose items will be spread
- case class StringLiteral(value: String)(implicit pos: Position) extends Tree with Literal with PropertyName with Product with Serializable
- case class Super()(implicit pos: Position) extends Tree with Product with Serializable
- case class Switch(selector: Tree, cases: List[(Tree, Tree)], default: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class This()(implicit pos: Position) extends Tree with Product with Serializable
- case class Throw(expr: Tree)(implicit pos: Position) extends Tree with Product with Serializable
-
sealed abstract
class
Tree extends AnyRef
AST node of JavaScript.
- case class TryCatch(block: Tree, errVar: Ident, handler: Tree)(implicit pos: Position) extends Tree with Product with Serializable
- case class TryFinally(block: Tree, finalizer: Tree)(implicit pos: Position) extends Tree with Product with Serializable
-
case class
UnaryOp(op: Code, lhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable
Unary operation (always preserves pureness).
Unary operation (always preserves pureness).
Operations which do not preserve pureness are not allowed in this tree. These are notably ++ and --
- case class Undefined()(implicit pos: Position) extends Tree with Literal with Product with Serializable
- case class VarDef(name: Ident, rhs: Option[Tree])(implicit pos: Position) extends Tree with LocalDef with Product with Serializable
- case class VarRef(ident: Ident)(implicit pos: Position) extends Tree with Product with Serializable
- case class While(cond: Tree, body: Tree, label: Option[Ident] = None)(implicit pos: Position) extends Tree with Product with Serializable
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
- object BinaryOp extends Serializable
- object Block
- object ExportName extends Serializable
- object Ident extends Serializable
- object UnaryOp extends Serializable