Package org.graalvm.polyglot
Class TypeLiteral<T>
java.lang.Object
org.graalvm.polyglot.TypeLiteral<T>
Represents a generic type
T
. Java doesn't yet provide a way to represent generic types,
so this class does. Forces clients to create a subclass of this class which enables retrieval of
the type information even at runtime.
For example, to create a type literal for List<String>
, you can create an empty anonymous
inner class:
TypeLiteral<List<String>> list = new TypeLiteral<List<String>>() {};
- Since:
- 19.0
- See Also:
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
TypeLiteral
protected TypeLiteral()Constructs a new type literal. Derives represented class from type parameter.Clients create an empty anonymous subclass. Doing so embeds the type parameter in the anonymous class's type hierarchy so we can reconstitute it at runtime despite erasure.
- Since:
- 19.0
-
-
Method Details
-
getType
Returns the type literal including generic type information.- Since:
- 19.0
-
getRawType
Returns the raw class type of the literal.- Since:
- 19.0
-
equals
-
hashCode
public final int hashCode() -
toString
-