APIdia Launch Partner
Top Description Methods
java.lang.classfile.attribute

public sealed Interface ModuleRequireInfo

permits UnboundModuleRequiresInfo
Known Direct Implementers
jdk.internal.classfile.impl.UnboundAttribute.UnboundModuleRequiresInfo
Imports
java.lang.classfile.constantpool.ModuleEntry, .Utf8Entry, java.lang.constant.ModuleDesc, java.lang.module.ModuleDescriptor, java.lang.reflect.AccessFlag, java.util.Collection, .Optional, .Set, jdk.internal.classfile.impl.TemporaryConstantPool, .UnboundAttribute, .Util

Models a single "requires" declaration in the ModuleAttribute.
Since
24
Java Virtual Machine Specification
4.7.25 The Module Attribute
See Also
ModuleAttribute#requires(), ModuleDescriptor#requires()

Method Summary

Modifier and TypeMethod and Description
public default boolean

Returns:

whether the specific access flag is set
has
(AccessFlag
the access flag
flag
)

Returns whether the specific access flag is set.

public static ModuleRequireInfo

Returns:

a module requirement description
of
(ModuleEntry
the required module
requires
,
int
the require-specific flags
requiresFlags
,
Utf8Entry
the required version, may be null
requiresVersion
)

Returns a module requirement description.

public static ModuleRequireInfo

Returns:

a module requirement description
of
(ModuleEntry
the required module
requires
,
Collection<AccessFlag>
the require-specific flags
requiresFlags
,
Utf8Entry
the required version, may be null
requiresVersion
)

Returns a module requirement description.

public static ModuleRequireInfo

Returns:

a module requirement description
of
(ModuleDesc
the required module
requires
,
int
the require-specific flags
requiresFlags
,
String
the required version, may be null
requiresVersion
)

Returns a module requirement description.

public static ModuleRequireInfo

Returns:

a module requirement description
of
(ModuleDesc
the required module
requires
,
Collection<AccessFlag>
the require-specific flags
requiresFlags
,
String
the required version, may be null
requiresVersion
)

Returns a module requirement description.

public ModuleEntry

Returns:

The module on which the current module depends
requires
()

Returns The module on which the current module depends.

public default Set<AccessFlag>

Returns:

the flags associated with this require declaration, as a set of flag enums
requiresFlags
()

Returns the flags associated with this require declaration, as a set of flag enums.

public int

Returns:

the flags associated with this require declaration, as a bit mask
requiresFlagsMask
()

Returns the flags associated with this require declaration, as a bit mask.

public Optional<Utf8Entry>

Returns:

the required version of the required module, if present
requiresVersion
()

Returns the required version of the required module, if present.

Method Detail

hasback to summary
public default boolean has(AccessFlag flag)

Returns whether the specific access flag is set.

Parameters
flag:AccessFlag

the access flag

Returns:boolean

whether the specific access flag is set

See Also
AccessFlag.Location#MODULE_REQUIRES
ofback to summary
public static ModuleRequireInfo of(ModuleEntry requires, int requiresFlags, Utf8Entry requiresVersion)

Returns a module requirement description.

Parameters
requires:ModuleEntry

the required module

requiresFlags:int

the require-specific flags

requiresVersion:Utf8Entry

the required version, may be null

Returns:ModuleRequireInfo

a module requirement description

Exceptions
IllegalArgumentException:
if requiresFlags is not u2
ofback to summary
public static ModuleRequireInfo of(ModuleEntry requires, Collection<AccessFlag> requiresFlags, Utf8Entry requiresVersion)

Returns a module requirement description.

Parameters
requires:ModuleEntry

the required module

requiresFlags:Collection<AccessFlag>

the require-specific flags

requiresVersion:Utf8Entry

the required version, may be null

Returns:ModuleRequireInfo

a module requirement description

Exceptions
IllegalArgumentException:
if any flag cannot be applied to the AccessFlag.Location#MODULE_REQUIRES location
ofback to summary
public static ModuleRequireInfo of(ModuleDesc requires, int requiresFlags, String requiresVersion)

Returns a module requirement description.

Parameters
requires:ModuleDesc

the required module

requiresFlags:int

the require-specific flags

requiresVersion:String

the required version, may be null

Returns:ModuleRequireInfo

a module requirement description

Exceptions
IllegalArgumentException:
if requiresFlags is not u2
ofback to summary
public static ModuleRequireInfo of(ModuleDesc requires, Collection<AccessFlag> requiresFlags, String requiresVersion)

Returns a module requirement description.

Parameters
requires:ModuleDesc

the required module

requiresFlags:Collection<AccessFlag>

the require-specific flags

requiresVersion:String

the required version, may be null

Returns:ModuleRequireInfo

a module requirement description

Exceptions
IllegalArgumentException:
if any flag cannot be applied to the AccessFlag.Location#MODULE_REQUIRES location
requiresback to summary
public ModuleEntry requires()

Returns The module on which the current module depends.

Returns:ModuleEntry

The module on which the current module depends

requiresFlagsback to summary
public default Set<AccessFlag> requiresFlags()

Returns the flags associated with this require declaration, as a set of flag enums.

Returns:Set<AccessFlag>

the flags associated with this require declaration, as a set of flag enums

Exceptions
IllegalArgumentException:
if the flags mask has any undefined bit set
See Also
ModuleDescriptor.Requires#accessFlags(), AccessFlag.Location#MODULE_REQUIRES
requiresFlagsMaskback to summary
public int requiresFlagsMask()

Returns the flags associated with this require declaration, as a bit mask. It is a u2 value.

Returns:int

the flags associated with this require declaration, as a bit mask

See Also
ModuleDescriptor.Requires#modifiers(), AccessFlag.Location#MODULE_REQUIRES
requiresVersionback to summary
public Optional<Utf8Entry> requiresVersion()

Returns the required version of the required module, if present.

Returns:Optional<Utf8Entry>

the required version of the required module, if present

See Also
ModuleDescriptor.Requires#rawCompiledVersion()