abstract class PrepJSInterop[G <: Global with Singleton] extends PluginComponent with PrepJSExports[G] with Transform with CompatComponent
Prepares classes extending js.Any for JavaScript interop
This phase does: - Sanity checks for js.Any hierarchy - Annotate subclasses of js.Any to be treated specially - Rewrite calls to scala.Enumeration.Value (include name string) - Create JSExport methods: Dummy methods that are propagated through the whole compiler chain to mark exports. This allows exports to have the same semantics than methods.
- Alphabetic
- By Inheritance
- PrepJSInterop
- CompatComponent
- Transform
- PrepJSExports
- PluginComponent
- SubComponent
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new PrepJSInterop(global: G)
Type Members
-
implicit
class
BTypesCompat extends AnyRef
- Definition Classes
- CompatComponent
-
implicit final
class
GlobalCompat extends AnyRef
- Definition Classes
- CompatComponent
-
implicit final
class
SAMFunctionCompatOps extends AnyRef
- Definition Classes
- CompatComponent
-
implicit final
class
StdTermNamesCompat extends AnyRef
- Definition Classes
- CompatComponent
-
implicit final
class
StdTypeNamesCompat extends AnyRef
- Definition Classes
- CompatComponent
-
implicit final
class
SymbolCompat extends AnyRef
- Definition Classes
- CompatComponent
-
case class
ExportInfo(jsName: String, destination: (jsAddons)#ExportDestination)(pos: G.Position) extends JSGlobalAddons.jsInterop.ExportInfo with Product with Serializable
- Definition Classes
- PrepJSExports
- class JSInteropPhase extends Phase
- class JSInteropTransformer extends G.Transformer
-
class
Phase extends scala.tools.nsc.transform.Transform.StdPhase
- Definition Classes
- Transform
-
type
SAMFunctionCompat = G.SAMFunction
- Definition Classes
- CompatComponent
-
abstract
class
StdPhase extends GlobalPhase
- Definition Classes
- SubComponent
Abstract Value Members
-
abstract
val
jsAddons: JSGlobalAddons { val global: PrepJSInterop.this.global.type }
Not for use in the constructor body: only initialized afterwards.
-
abstract
val
runsAfter: List[String]
- Definition Classes
- SubComponent
-
abstract
val
scalaJSOpts: ScalaJSOptions
Not for use in the constructor body: only initialized afterwards.
Concrete Value Members
-
object
SAMFunctionAttachCompat
- Definition Classes
- CompatComponent
-
object
SAMFunctionAttachCompatDef
- Definition Classes
- CompatComponent
-
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
-
lazy val
SAMFunctionCompat: G.SAMFunction.type
- Definition Classes
- CompatComponent
-
final
def
afterOwnPhase[T](op: ⇒ T): T
- Definition Classes
- SubComponent
- Annotations
- @inline()
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
final
def
beforeOwnPhase[T](op: ⇒ T): T
- Definition Classes
- SubComponent
- Annotations
- @inline()
-
def
checkSetterSignature(sym: G.Symbol, pos: G.Position, exported: Boolean): Unit
Checks that a setter has the right signature.
Checks that a setter has the right signature.
Reports error messages otherwise.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
description: String
- Definition Classes
- PrepJSInterop → PluginComponent
-
def
enabled: Boolean
- Definition Classes
- SubComponent
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
genExportMember(baseSym: G.Symbol): List[G.Tree]
Generate the exporter for the given DefDef or ValDef (abstract val in class, val in trait or lazy val; these don't get DefDefs until the fields phase)
Generate the exporter for the given DefDef or ValDef (abstract val in class, val in trait or lazy val; these don't get DefDefs until the fields phase)
If this DefDef is a constructor, it is registered to be exported by GenJSCode instead and no trees are returned.
- Definition Classes
- PrepJSExports
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
global: G
- Definition Classes
- PrepJSInterop → CompatComponent → SubComponent
-
def
hashCode(): Int
- Definition Classes
- SubComponent → AnyRef → Any
-
val
initial: Boolean
- Definition Classes
- SubComponent
-
final
val
internal: Boolean(false)
- Definition Classes
- PluginComponent → SubComponent
-
def
isImplClass(sym: G.Symbol): Boolean
- Definition Classes
- CompatComponent
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isJSAny(sym: G.Symbol): Boolean
-
def
isPrivateMaybeWithin(sym: G.Symbol): Boolean
Tests whether the symbol has
private
in any form, eitherprivate
,private[this]
orprivate[Enclosing]
. -
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
newPhase(p: scala.tools.nsc.Phase): StdPhase
- Definition Classes
- PrepJSInterop → Transform → SubComponent
-
def
newTransformer(unit: G.CompilationUnit): G.Transformer
- Attributes
- protected
- Definition Classes
- PrepJSInterop → Transform
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
ownPhase: scala.tools.nsc.Phase
- Definition Classes
- SubComponent
-
val
phaseName: String
- Definition Classes
- PrepJSInterop → SubComponent
-
def
phaseNewFlags: Long
- Definition Classes
- SubComponent
-
def
phaseNextFlags: Long
- Definition Classes
- SubComponent
-
def
registerClassOrModuleExports(sym: G.Symbol): Unit
Check and (potentially) register a class or module for export.
Check and (potentially) register a class or module for export.
Note that Scala classes are never registered for export, their constructors are.
- Definition Classes
- PrepJSExports
-
val
requires: List[String]
- Definition Classes
- SubComponent
-
val
runsBefore: List[String]
- Definition Classes
- SubComponent
-
val
runsRightAfter: Option[String]
- Definition Classes
- PluginComponent → SubComponent
-
lazy val
scalaUsesImplClasses: Boolean
- Definition Classes
- CompatComponent
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
val
terminal: Boolean
- Definition Classes
- SubComponent
-
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
- @throws( ... ) @native()