Class Types
Most of these utilities are designed to go along with GeAnTyRef.
- Since:
- 4.0.0
- See Also:
- 
- for other tools to work with types
- for methods to construct types
 
- 
Method SummaryModifier and TypeMethodDescriptionallDeclaredMethods(Class<?> clazz) Get all declared methods in the provided class and its superclasses and superinterfaces, up to but not includingObject.allSuperTypes(Type type) Get all supertypes of this object with type parameters.Get all supertypes and interfaces of the provided type.static TypeBox the input type if it is an unboxed primitiveClass.static AnnotatedElementcombinedAnnotations(AnnotatedElement... elements) Get an element containing the annotations of all the provided elements.static @Nullable ObjectdefaultValue(Class<?> type) Get the default value for a type.static booleanGet if the provided type is an array type.static booleanisBoxedPrimitive(Type input) Get whether or not the provided input type is a boxed primitive type.static <T> io.leangen.geantyref.TypeToken<List<T>>Given an element type, create a new list type.static <T> io.leangen.geantyref.TypeToken<List<T>>makeListType(io.leangen.geantyref.TypeToken<T> elementType) Given an element type, create a new list type.static <K,V> io.leangen.geantyref.TypeToken<Map<K, V>> makeMap(io.leangen.geantyref.TypeToken<K> key, io.leangen.geantyref.TypeToken<V> value) Given an element type, create a newMaptype.static <K,V> io.leangen.geantyref.TypeToken<Map<K, V>> Given an element type, create a newMaptype.static <K,V> io.leangen.geantyref.TypeToken<Map<K, V>> Given an element type, create a newMaptype.static <K,V> io.leangen.geantyref.TypeToken<Map<K, V>> Given an element type, create a newMaptype.static TyperequireCompleteParameters(Type input) Throw an exception if the passed type is raw (missing parameters)..static TypeUnbox the input type if it is a boxed primitive.
- 
Method Details- 
isArrayGet if the provided type is an array type.Being an array type means that the provided type has a component type. - Parameters:
- input- input type
- Returns:
- whether the type is an array
- Since:
- 4.0.0
 
- 
isBoxedPrimitiveGet whether or not the provided input type is a boxed primitive type.This check will not match unboxed primitives. - Parameters:
- input- type to check
- Returns:
- if type is a boxed primitive
- Since:
- 4.0.0
 
- 
unboxUnbox the input type if it is a boxed primitive.- Parameters:
- input- input type
- Returns:
- the unboxed version of the input type, or the input type if it was already non-primitive
- Since:
- 4.0.0
 
- 
defaultValueGet the default value for a type.For all reference types, this is null. For all primitive types, this is equivalent to their defineddefaultvalue.- Parameters:
- type- the type to get a default value for
- Returns:
- the default value, or nullfor reference types
- Since:
- 4.1.0
 
- 
boxBox the input type if it is an unboxed primitiveClass.- Parameters:
- input- input type
- Returns:
- the unboxed version of the input type, or the input type if it was already a primitive, or had no primitive equivalent
- Since:
- 4.0.0
 
- 
makeListGiven an element type, create a new list type.The provided element type must not be a raw type This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- T- type of element
- Parameters:
- elementType- class representing the element type
- Returns:
- new list type token
- Since:
- 4.2.0
 
- 
makeListTypepublic static <T> io.leangen.geantyref.TypeToken<List<T>> makeListType(io.leangen.geantyref.TypeToken<T> elementType) Given an element type, create a new list type.This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- T- type of element
- Parameters:
- elementType- type token representing the element type
- Returns:
- new list type token
- Since:
- 4.0.0
 
- 
makeMapGiven an element type, create a newMaptype.The provided key and value types must not be a raw type This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- K- type of key
- V- type of value
- Parameters:
- key- type of the map's key
- value- type of the map's value
- Returns:
- new Maptype token
- Since:
- 4.2.0
 
- 
makeMappublic static <K,V> io.leangen.geantyref.TypeToken<Map<K,V>> makeMap(io.leangen.geantyref.TypeToken<K> key, io.leangen.geantyref.TypeToken<V> value) Given an element type, create a newMaptype.This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- K- type of key
- V- type of value
- Parameters:
- key- type of the map's key
- value- type of the map's value
- Returns:
- new Maptype token
- Since:
- 4.2.0
 
- 
makeMappublic static <K,V> io.leangen.geantyref.TypeToken<Map<K,V>> makeMap(Class<K> key, io.leangen.geantyref.TypeToken<V> value) Given an element type, create a newMaptype.This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- K- type of key
- V- type of value
- Parameters:
- key- type of the map's key
- value- type of the map's value
- Returns:
- new Maptype token
- Since:
- 4.2.0
 
- 
makeMappublic static <K,V> io.leangen.geantyref.TypeToken<Map<K,V>> makeMap(io.leangen.geantyref.TypeToken<K> key, Class<V> value) Given an element type, create a newMaptype.This has an outcome similar to constructing a TypeTokendirectly, but avoids generating an extra anonymous class.- Type Parameters:
- K- type of key
- V- type of value
- Parameters:
- key- type of the map's key
- value- type of the map's value
- Returns:
- new Maptype token
- Since:
- 4.2.0
 
- 
combinedAnnotationsGet an element containing the annotations of all the provided elements.If multiple elements have the same annotation, only the first one with an applicable type is returned. - Parameters:
- elements- elements to combine
- Returns:
- new union element
- Since:
- 4.0.0
 
- 
requireCompleteParametersThrow an exception if the passed type is raw (missing parameters)..- Parameters:
- input- input type
- Returns:
- type, passed through
- Since:
- 4.0.0
 
- 
allSuperTypesGet all supertypes of this object with type parameters.The iteration order is undefined. The returned stream will include the base type plus superclasses, but not superinterfaces. - Parameters:
- type- base type
- Returns:
- stream of supertypes
- Since:
- 4.0.0
 
- 
allSuperTypesAndInterfacesGet all supertypes and interfaces of the provided type.The iteration order is undefined. The returned stream will include the base type plus superclasses and superinterfaces. - Parameters:
- type- base type
- Returns:
- stream of supertypes
- Since:
- 4.0.0
 
- 
allDeclaredMethodsGet all declared methods in the provided class and its superclasses and superinterfaces, up to but not includingObject.Overridden methods will be skipped when encountered in parent types. - Parameters:
- clazz- the class to visit
- Returns:
- a list of methods that may not be modifiable
- Since:
- 4.2.0
 
 
-