JSNativeLoadSpec

org.scalajs.ir.Trees.JSNativeLoadSpec
See theJSNativeLoadSpec companion class

Attributes

Companion
class
Graph
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

final case class Global(globalRef: String, path: List[String]) extends JSNativeLoadSpec

Load from the global scope.

Load from the global scope.

The globalRef is the name of a global variable (found in the global scope). It must be valid according to JSGlobalRef.isValidJSGlobalRefName.

The path is a series of nested property names starting from that variable.

The path can be empty, in which case this denotes the specified global variable itself.

Examples:

// Foo
Global("Foo", Nil)

// cp.Vect
Global("cp", List("Vect"))

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class Import(module: String, path: List[String]) extends JSNativeLoadSpec

Load from a module import.

Load from a module import.

The module is the ES module identifier. The path is a series of nested property names starting from the module object.

The path can be empty, in which case the specification denotes the namespace import, i.e., import a special object whose fields are all the exports of the module.

Any element in the path is a property selection from there. A module import info with one path element is importing that particular value from the module.

Examples:

// import { Bar as x } from 'foo'
Import("foo", List("Bar"))

// import { Bar as y } from 'foo'
// y.Baz
Import("foo", List("Bar", "Baz"))

// import * as x from 'foo' (namespace import)
Import("foo", Nil)

// import x from 'foo' (default import)
Import("foo", List("default"))

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
final case class ImportWithGlobalFallback(importSpec: Import, globalSpec: Global) extends JSNativeLoadSpec

Like Import, but with a Global fallback when linking without modules.

Like Import, but with a Global fallback when linking without modules.

When linking with a module kind that supports modules, the importSpec is used. When modules are not supported, use the fallback globalSpec.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Inherited types

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Mirror

The name of the type

The name of the type

Attributes

Inherited from:
Mirror