- All Known Subinterfaces:
Signature.ArrayTypeSig,Signature.BaseTypeSig,Signature.ClassTypeSig,Signature.RefTypeSig,Signature.ThrowableSig,Signature.TypeVarSig
public sealed interface Signature
permits Signature.BaseTypeSig, Signature.RefTypeSig, Signature.ThrowableSig
Models generic Java type signatures, as defined in JVMS .
Names in signatures are identifiers, which must
not be empty and must not contain any of the ASCII characters
. ; [ / < > :. Top-level class and interface names are denoted by
slash-separated identifiers.
- Since:
- 24
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceModels the signature of an array type.static interfaceModels the signature of a primitive type (JLS ) or void.static interfaceModels the signature of a possibly-parameterized class or interface type.static interfaceModels the signature of a reference type, which may be a class, interface, type variable, or array type.static interfaceMarker interface for a signature for a throwable type.static interfaceModels a type argument, an argument to a type parameter.static interfaceModels a signature for a type parameter of a generic class, interface, method, or constructor, which introduces a type variable.static interfaceModels the signature of a type variable. -
Method Summary
-
Method Details
-
signatureString
String signatureString()Returns the raw signature string.- Returns:
- the raw signature string
-
parseFrom
Parses a Java type signature from a raw string.- Parameters:
javaTypeSignature- raw Java type signature string- Returns:
- a Java type signature
- Throws:
IllegalArgumentException- if the string is not a valid Java type signature string
-
of
Returns a Java type signature from a field descriptor. The returned signature represents a reifiable type (JLS ).- Parameters:
classDesc- the symbolic description of the Java type- Returns:
- a Java type signature from a field descriptor
- Throws:
IllegalArgumentException- if the field descriptor cannot be denoted
-