dotty.tools.backend.sjs
package dotty.tools.backend.sjs
Members list
Concise view
Type members
Classlikes
object GenSJSIR
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 generatedjs.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.
Attributes
- Companion:
- object
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
object JSCodeGen
object JSDefinitions
Attributes
- Companion:
- class
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- JSDefinitions.type
Attributes
- Companion:
- object
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
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)
Attributes
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- JSEncoding.type
Attributes
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
Conversion utilities from dotty Positions to IR Positions.
Conversion utilities from dotty Positions to IR Positions.
Attributes
- Companion:
- object
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
object JSPositions
Attributes
- Companion:
- class
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- JSPositions.type
object JSPrimitives
Attributes
- Companion:
- class
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Self type
- JSPrimitives.type
Attributes
- Companion:
- object
- Graph
- Supertypes
Attributes
- Companion:
- object
- Graph
- Supertypes
- class Objecttrait Matchableclass Any