Record Class DependencyOptions
- Record Components:
mode
- Returns the dependency management mode.entryPoints
- Returns the list of explicit entry points.
- All Implemented Interfaces:
Serializable
Dependency information is pulled out from the JS code by looking for import and export primitives (like ES import and export statements, Closure Library's goog.module, goog.provide and goog.require calls, or CommonJS require calls). The compiler can optionally use this information to sort input files in dependency order and/or prune unnecessary input files.
Also see CodingConvention.extractClassNameIfProvide(Node, Node)
and CodingConvention.extractClassNameIfRequire(Node, Node)
, which affect what the compiler considers
to be goog.provide and goog.require statements.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Describes how the compiler should manage dependencies. -
Constructor Summary
ConstructorsConstructorDescriptionDependencyOptions
(DependencyOptions.DependencyMode mode, com.google.common.collect.ImmutableList<ModuleIdentifier> entryPoints) Creates an instance of aDependencyOptions
record class. -
Method Summary
Modifier and TypeMethodDescriptioncom.google.common.collect.ImmutableList
<ModuleIdentifier> Returns the value of theentryPoints
record component.final boolean
Indicates whether some other object is "equal to" this one.static @Nullable DependencyOptions
fromFlags
(@Nullable DependencyOptions.DependencyMode dependencyModeFlag, List<String> entryPointFlag, List<String> closureEntryPointFlag, String commonJsEntryModuleFlag, boolean manageClosureDependenciesFlag, boolean onlyClosureDependenciesFlag) A helper function for validating dependency management flags and converting them into aDependencyOptions
object.com.google.common.collect.ImmutableList
<ModuleIdentifier> getMode()
final int
hashCode()
Returns a hash code value for this object.mode()
Returns the value of themode
record component.boolean
Returns whether dependency management is enabled.static DependencyOptions
none()
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.NONE
mode.static DependencyOptions
pruneAllowNoEntryPoints
(Iterable<ModuleIdentifier> entryPoints) Returns aDependencyOptions
using theDependencyOptions.DependencyMode.PRUNE
mode with the given entry points.static DependencyOptions
pruneForEntryPoints
(Iterable<ModuleIdentifier> entryPoints) Returns aDependencyOptions
using theDependencyOptions.DependencyMode.PRUNE
mode with the given entry points.static DependencyOptions
pruneLegacyForEntryPoints
(Iterable<ModuleIdentifier> entryPoints) Deprecated.boolean
Returns whether moochers should be dropped.boolean
Returns whether files should be pruned.boolean
Returns whether files should be sorted.static DependencyOptions
sortOnly()
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.SORT_ONLY
mode.final String
toString()
Returns a string representation of this record class.
-
Constructor Details
-
DependencyOptions
public DependencyOptions(DependencyOptions.DependencyMode mode, com.google.common.collect.ImmutableList<ModuleIdentifier> entryPoints) Creates an instance of aDependencyOptions
record class.- Parameters:
mode
- the value for themode
record componententryPoints
- the value for theentryPoints
record component
-
-
Method Details
-
getMode
-
getEntryPoints
@InlineMe(replacement="this.entryPoints()") public com.google.common.collect.ImmutableList<ModuleIdentifier> getEntryPoints() -
needsManagement
public boolean needsManagement()Returns whether dependency management is enabled. -
shouldSort
public boolean shouldSort()Returns whether files should be sorted.If true, the input files should be sorted in dependency order. Otherwise, input files should not be reordered.
-
shouldPrune
public boolean shouldPrune()Returns whether files should be pruned.If true, an input file should be excluded from the compilation if it is not a transitive dependency of an entry point. Otherwise, all input files should be included.
-
shouldDropMoochers
public boolean shouldDropMoochers()Returns whether moochers should be dropped.A moocher is a strong file that does not goog.provide a namespace and is not a goog.module, ES module or CommonJS module. Weak files are never considered moochers.
If true, moochers should not be considered implicit entry points.
-
none
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.NONE
mode. -
sortOnly
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.SORT_ONLY
mode. -
pruneLegacyForEntryPoints
@InlineMe(replacement="new DependencyOptions(DependencyMode.PRUNE_LEGACY, ImmutableList.copyOf(entryPoints))", imports={"com.google.common.collect.ImmutableList","com.google.javascript.jscomp.DependencyOptions","com.google.javascript.jscomp.DependencyOptions.DependencyMode"}) @Deprecated public static DependencyOptions pruneLegacyForEntryPoints(Iterable<ModuleIdentifier> entryPoints) Deprecated.PreferpruneForEntryPoints(Iterable)
with a complete list of entry points.Returns aDependencyOptions
using theDependencyOptions.DependencyMode.PRUNE_LEGACY
mode with the given entry points. -
pruneAllowNoEntryPoints
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.PRUNE
mode with the given entry points. -
pruneForEntryPoints
Returns aDependencyOptions
using theDependencyOptions.DependencyMode.PRUNE
mode with the given entry points. -
fromFlags
public static @Nullable DependencyOptions fromFlags(@Nullable DependencyOptions.DependencyMode dependencyModeFlag, List<String> entryPointFlag, List<String> closureEntryPointFlag, String commonJsEntryModuleFlag, boolean manageClosureDependenciesFlag, boolean onlyClosureDependenciesFlag) A helper function for validating dependency management flags and converting them into aDependencyOptions
object.Returns null when no dependency management flags have been specified.
TODO(tjgq): Simplify this once we deprecate and remove all legacy flags and standardize on --dependency_mode and --entry_point.
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object)
. -
mode
Returns the value of themode
record component.- Returns:
- the value of the
mode
record component
-
entryPoints
Returns the value of theentryPoints
record component.- Returns:
- the value of the
entryPoints
record component
-
pruneForEntryPoints(Iterable)
with a complete list of entry points.