Interface ModuleRequireInfo
public sealed interface ModuleRequireInfo
Models a single "requires" declaration in the
ModuleAttribute.- See Java Virtual Machine Specification:
-
4.7.25 The
ModuleAttribute - Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault booleanhas(AccessFlag flag) Returns whether the specific access flag is set.static ModuleRequireInfoof(ModuleEntry requires, int requiresFlags, Utf8Entry requiresVersion) Returns a module requirement description.static ModuleRequireInfoof(ModuleEntry requires, Collection<AccessFlag> requiresFlags, Utf8Entry requiresVersion) Returns a module requirement description.static ModuleRequireInfoof(ModuleDesc requires, int requiresFlags, String requiresVersion) Returns a module requirement description.static ModuleRequireInfoof(ModuleDesc requires, Collection<AccessFlag> requiresFlags, String requiresVersion) Returns a module requirement description.requires()Returns The module on which the current module depends.default Set<AccessFlag> Returns the flags associated with this require declaration, as a set of flag enums.intReturns the flags associated with this require declaration, as a bit mask.Returns the required version of the required module, if present.
-
Method Details
-
requires
ModuleEntry requires()Returns The module on which the current module depends.- Returns:
- The module on which the current module depends
-
requiresFlagsMask
int requiresFlagsMask()Returns the flags associated with this require declaration, as a bit mask. It is in the range of unsigned short,[0, 0xFFFF].- Returns:
- the flags associated with this require declaration, as a bit mask
- See Also:
-
requiresFlags
Returns the flags associated with this require declaration, as a set of flag enums.- Returns:
- the flags associated with this require declaration, as a set of flag enums
- Throws:
IllegalArgumentException- if the flags mask has any undefined bit set- See Also:
-
requiresVersion
-
has
Returns whether the specific access flag is set.- Parameters:
flag- the access flag- Returns:
- whether the specific access flag is set
- See Also:
-
of
Returns a module requirement description.- Parameters:
requires- the required modulerequiresFlags- the require-specific flagsrequiresVersion- the required version, may benull- Returns:
- a module requirement description
-
of
static ModuleRequireInfo of(ModuleEntry requires, Collection<AccessFlag> requiresFlags, Utf8Entry requiresVersion) Returns a module requirement description.- Parameters:
requires- the required modulerequiresFlags- the require-specific flagsrequiresVersion- the required version, may benull- Returns:
- a module requirement description
- Throws:
IllegalArgumentException- if any flag cannot be applied to theAccessFlag.Location.MODULE_REQUIRESlocation
-
of
Returns a module requirement description.- Parameters:
requires- the required modulerequiresFlags- the require-specific flagsrequiresVersion- the required version, may benull- Returns:
- a module requirement description
-
of
static ModuleRequireInfo of(ModuleDesc requires, Collection<AccessFlag> requiresFlags, String requiresVersion) Returns a module requirement description.- Parameters:
requires- the required modulerequiresFlags- the require-specific flagsrequiresVersion- the required version, may benull- Returns:
- a module requirement description
- Throws:
IllegalArgumentException- if any flag cannot be applied to theAccessFlag.Location.MODULE_REQUIRESlocation
-