org.scalajs.ir

Trees

object Trees

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Trees
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class Apply(flags: ApplyFlags, receiver: Tree, method: Ident, args: List[Tree])(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

    Apply an instance method with dynamic dispatch (the default).

  2. final class ApplyFlags extends AnyVal

  3. case class ApplyStatic(flags: ApplyFlags, cls: ClassRef, method: Ident, args: List[Tree])(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

    Apply a static method.

  4. case class ApplyStatically(flags: ApplyFlags, receiver: Tree, cls: ClassRef, method: Ident, args: List[Tree])(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

    Apply an instance method with static dispatch (e.

  5. case class ArrayLength(array: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  6. case class ArraySelect(array: Tree, index: Tree)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  7. case class ArrayValue(typeRef: ArrayTypeRef, elems: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

  8. case class AsInstanceOf(expr: Tree, typeRef: TypeRef)(implicit pos: Position) extends Tree with Product with Serializable

  9. case class Assign(lhs: Tree, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  10. case class BinaryOp(op: Code, lhs: Tree, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

    Binary operation (always preserves pureness).

  11. class Block extends Tree

  12. case class BooleanLiteral(value: Boolean)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  13. case class ByteLiteral(value: Byte)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  14. case class CharLiteral(value: Char)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  15. final class ClassDef extends IRNode

  16. case class ClassOf(typeRef: TypeRef)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  17. case class Closure(arrow: Boolean, captureParams: List[ParamDef], params: List[ParamDef], body: Tree, captureValues: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

    Closure with explicit captures.

  18. case class ComputedName(tree: Tree, logicalName: String) extends IRNode with PropertyName with Product with Serializable

  19. case class CreateJSClass(cls: ClassRef, captureValues: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

    Creates a JavaScript class value.

  20. case class Debugger()(implicit pos: Position) extends Tree with Product with Serializable

  21. case class DoWhile(body: Tree, cond: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  22. case class DoubleLiteral(value: Double)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  23. case class FieldDef(flags: MemberFlags, name: PropertyName, ftpe: Type)(implicit pos: Position) extends MemberDef with Product with Serializable

  24. case class FloatLiteral(value: Float)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  25. case class ForIn(obj: Tree, keyVar: Ident, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  26. case class GetClass(expr: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  27. sealed abstract class IRNode extends AnyRef

    Base class for all nodes in the IR.

  28. case class Ident(name: String, originalName: Option[String])(implicit pos: Position) extends IRNode with PropertyName with Product with Serializable

  29. case class If(cond: Tree, thenp: Tree, elsep: Tree)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  30. case class IntLiteral(value: Int)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  31. case class IsInstanceOf(expr: Tree, typeRef: TypeRef)(implicit pos: Position) extends Tree with Product with Serializable

  32. case class JSArrayConstr(items: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

  33. case class JSBinaryOp(op: Code, lhs: Tree, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

    Binary operation (always preserves pureness).

  34. case class JSBracketMethodApply(receiver: Tree, method: Tree, args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

  35. case class JSBracketSelect(qualifier: Tree, item: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  36. case class JSDelete(prop: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  37. case class JSDotMethodApply(receiver: Tree, method: Ident, args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

  38. case class JSDotSelect(qualifier: Tree, item: Ident)(implicit pos: Position) extends Tree with Product with Serializable

  39. case class JSFunctionApply(fun: Tree, args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

  40. case class JSGlobalRef(ident: Ident)(implicit pos: Position) extends Tree with Product with Serializable

  41. case class JSLinkingInfo()(implicit pos: Position) extends Tree with Product with Serializable

  42. sealed abstract class JSNativeLoadSpec extends AnyRef

    Loading specification for a native JS class or object.

  43. case class JSNew(ctor: Tree, args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

  44. case class JSObjectConstr(fields: List[(PropertyName, Tree)])(implicit pos: Position) extends Tree with Product with Serializable

  45. case class JSSpread(items: Tree)(implicit pos: Position) extends IRNode with TreeOrJSSpread with Product with Serializable

    ...items, the "spread" operator of ECMAScript 6.

  46. case class JSSuperBracketCall(superClass: Tree, receiver: Tree, method: Tree, args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

    Calls a method inherited from the given superClass on receiver.

  47. case class JSSuperBracketSelect(superClass: Tree, receiver: Tree, item: Tree)(implicit pos: Position) extends Tree with Product with Serializable

    Selects a property inherited from the given superClass on receiver.

  48. case class JSSuperConstructorCall(args: List[TreeOrJSSpread])(implicit pos: Position) extends Tree with Product with Serializable

    Super constructor call in the constructor of a non-native JS class.

  49. case class JSUnaryOp(op: Code, lhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

    Unary operation (always preserves pureness).

  50. case class Labeled(label: Ident, tpe: Type, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  51. sealed trait Literal extends Tree

    Marker for literals.

  52. case class LoadJSConstructor(cls: ClassRef)(implicit pos: Position) extends Tree with Product with Serializable

    Loads the constructor of a JS class (native or not).

  53. case class LoadJSModule(cls: ClassRef)(implicit pos: Position) extends Tree with Product with Serializable

    Like LoadModule but for a JS module class.

  54. case class LoadModule(cls: ClassRef)(implicit pos: Position) extends Tree with Product with Serializable

  55. case class LongLiteral(value: Long)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  56. case class Match(selector: Tree, cases: List[(List[IntLiteral], Tree)], default: Tree)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

    A break-free switch (without fallthrough behavior).

  57. sealed abstract class MemberDef extends IRNode

  58. final class MemberFlags extends AnyVal

  59. final class MemberNamespace extends AnyVal

  60. case class MethodDef(flags: MemberFlags, name: PropertyName, args: List[ParamDef], resultType: Type, body: Option[Tree])(optimizerHints: OptimizerHints, hash: Option[TreeHash])(implicit pos: Position) extends MemberDef with Product with Serializable

  61. case class New(cls: ClassRef, ctor: Ident, args: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

  62. case class NewArray(typeRef: ArrayTypeRef, lengths: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

  63. case class Null()(implicit pos: Position) extends Tree with Literal with Product with Serializable

  64. final class OptimizerHints extends AnyVal

  65. case class ParamDef(name: Ident, ptpe: Type, mutable: Boolean, rest: Boolean)(implicit pos: Position) extends IRNode with Product with Serializable

  66. case class PropertyDef(flags: MemberFlags, name: PropertyName, getterBody: Option[Tree], setterArgAndBody: Option[(ParamDef, Tree)])(implicit pos: Position) extends MemberDef with Product with Serializable

  67. sealed trait PropertyName extends IRNode

  68. case class RecordValue(tpe: RecordType, elems: List[Tree])(implicit pos: Position) extends Tree with Product with Serializable

  69. case class Return(expr: Tree, label: Ident)(implicit pos: Position) extends Tree with Product with Serializable

  70. case class Select(qualifier: Tree, item: Ident)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  71. case class SelectStatic(cls: ClassRef, item: Ident)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  72. case class ShortLiteral(value: Short)(implicit pos: Position) extends Tree with Literal with Product with Serializable

  73. case class Skip()(implicit pos: Position) extends Tree with Product with Serializable

  74. case class StoreModule(cls: ClassRef, value: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  75. case class StringLiteral(value: String)(implicit pos: Position) extends Tree with Literal with PropertyName with Product with Serializable

  76. case class This()(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  77. case class Throw(expr: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  78. sealed abstract class TopLevelExportDef extends IRNode

  79. case class TopLevelFieldExportDef(exportName: String, field: Ident)(implicit pos: Position) extends TopLevelExportDef with Product with Serializable

  80. case class TopLevelJSClassExportDef(exportName: String)(implicit pos: Position) extends TopLevelExportDef with Product with Serializable

  81. case class TopLevelMethodExportDef(methodDef: MethodDef)(implicit pos: Position) extends TopLevelExportDef with Product with Serializable

  82. case class TopLevelModuleExportDef(exportName: String)(implicit pos: Position) extends TopLevelExportDef with Product with Serializable

    Export for a top-level object.

  83. case class Transient(value: Value)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

    A transient node for custom purposes.

  84. sealed abstract class Tree extends IRNode with TreeOrJSSpread

    Node for a statement or expression in the IR.

  85. final class TreeHash extends AnyRef

    A hash of a tree (usually a MethodDef).

  86. sealed trait TreeOrJSSpread extends IRNode

    Either a Tree or a JSSpread.

  87. case class TryCatch(block: Tree, errVar: Ident, handler: Tree)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  88. case class TryFinally(block: Tree, finalizer: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  89. case class UnaryOp(op: Code, lhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

    Unary operation (always preserves pureness).

  90. case class Unbox(expr: Tree, charCode: Char)(implicit pos: Position) extends Tree with Product with Serializable

  91. case class Undefined()(implicit pos: Position) extends Tree with Literal with Product with Serializable

  92. case class VarDef(name: Ident, vtpe: Type, mutable: Boolean, rhs: Tree)(implicit pos: Position) extends Tree with Product with Serializable

  93. case class VarRef(ident: Ident)(tpe: Type)(implicit pos: Position) extends Tree with Product with Serializable

  94. case class While(cond: Tree, body: Tree)(implicit pos: Position) extends Tree with Product with Serializable

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. object ApplyFlags

  7. object BinaryOp extends Serializable

  8. object Block

  9. object ClassDef

  10. object Ident extends Serializable

  11. object JSBinaryOp extends Serializable

  12. object JSNativeLoadSpec

  13. object JSUnaryOp extends Serializable

  14. object MemberFlags

  15. object MemberNamespace

  16. object OptimizerHints

  17. object Transient extends Serializable

  18. object UnaryOp extends Serializable

  19. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  20. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  22. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  23. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  26. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  27. final val isKeyword: Set[String]

  28. final def isValidIdentifier(name: String): Boolean

  29. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  30. final def notify(): Unit

    Definition Classes
    AnyRef
  31. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  32. final def requireValidIdent(name: String): Unit

    Annotations
    @inline()
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  34. def toString(): String

    Definition Classes
    AnyRef → Any
  35. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped