dotty.tools.backend

sjs

package sjs

Visibility
  1. Public
  2. All

Type Members

  1. class GenSJSIR extends DotClass with Phase

    Generates Scala.js IR files for the compilation unit.

  2. class JSCodeGen extends AnyRef

    Main codegen for Scala.js IR.

    Main codegen for Scala.js IR.

    GenSJSIR creates one instance of JSCodeGen per compilation unit. The run() method processes the whole compilation unit and generates .sjsir files for it.

    There are 4 main levels of translation:

    • genCompilationUnit() iterates through all the type definitions in the compilation unit. Each generated js.ClassDef is serialized to an .sjsir file.
    • genScalaClass() and other similar methods generate the skeleton of classes.
    • genMethod() and similar methods generate the declarations of methods.
    • genStatOrExpr() and everything else generate the bodies of methods.
  3. final class JSDefinitions extends AnyRef

  4. class JSPositions extends AnyRef

    Conversion utilities from dotty Positions to IR Positions.

  5. class JSPrimitives extends DottyPrimitives

  6. class ScopedVar[A] extends AnyRef

Value Members

  1. object JSDefinitions

  2. object JSEncoding

    Encoding of symbol names for JavaScript

    Encoding of symbol names for JavaScript

    Some issues that this encoding solves: * Overloading: encode the full signature in the JS name * Same scope for fields and methods of a class * Global access to classes and modules (by their full name)

  3. object JSInterop

    Management of the interoperability with JavaScript.

  4. object JSPrimitives

  5. object ScopedVar

Ungrouped