Class Export

java.lang.Object
com.google.javascript.jscomp.modules.Export

public abstract class Export extends Object
An exported name in a module.

See the ExportEntry in the ECMAScript spec.

  • Field Details

    • DEFAULT_EXPORT_NAME

      public static final String DEFAULT_EXPORT_NAME
      The localName() of anonymous ES module default exports, e.g. export default 0.
      See Also:
    • NAMESPACE

      public static final String NAMESPACE
      The exportName() of goog.module default exports, e.g. exports = class {};, and the 'namespace' of an ES module consisting of all exported names.
      See Also:
  • Method Details

    • exportName

      public abstract @Nullable String exportName()
      Returns the name of this export or null if this is an export * from.
    • moduleRequest

      public abstract @Nullable String moduleRequest()
      Returns the module identifier of an export from or null if this is not an export {} from or export * from.
    • importName

      public abstract @Nullable String importName()
      Returns the name imported from another module. * if import all or null if not an export {} from.
    • localName

      public abstract @Nullable String localName()
      Returns the local name of this export or null if none. *default* if default.
    • modulePath

      public abstract @Nullable ModuleLoader.ModulePath modulePath()
      Returns the path of the containing module
    • exportNode

      public abstract @Nullable Node exportNode()
      Node that this export originates from. Used for its source location.

      Null only if from non-ES module or from a missing ES module.

    • nameNode

      public abstract @Nullable Node nameNode()
      Node that this export originates from. Used for its source location.

      Null only if from non-ES6 module or an export syntax that has no associated name, e.g. export * from.

    • moduleMetadata

      public abstract ModuleMetadataMap.ModuleMetadata moduleMetadata()
      The module that contains this export.
    • closureNamespace

      public abstract @Nullable String closureNamespace()
    • mutated

      public abstract boolean mutated()
      Whether or not this export is potentially mutated after module execution (i.e. in a function scope).