java.lang.Object
iu.type.ParameterizedElement
- All Implemented Interfaces:
IuParameterizedElement,ParameterizedFacade
Implements the facade view of an
IuParameterizedElement as a
delegating mix-in.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voidapply(AnnotatedElementBase<?> referrer, TypeVariable<?> typeVariable, Type actualTypeArgument) Applies a type argument from a parameterized type.(package private) voidapply(Map<String, TypeFacade<?, ?>> typeArguments) Applies type arguments.(package private) voidseal(GenericDeclaration genericDeclaration, AnnotatedElementBase<?> referrer) Seals type parameters from incoming arguments based on a generic declaration.TypeFacade<?, ?> typeParameter(String name) Gets a type parameter by name.Map<String, TypeFacade<?, ?>> Gets type parameters by name.
-
Constructor Details
-
ParameterizedElement
ParameterizedElement()Facade constructor.
-
-
Method Details
-
apply
Applies type arguments.This is typically done after sealing original type parameters to apply the resulting parameters as arguments to the next reference.
- Parameters:
typeArguments- Type arguments to apply. Expects arguments to be applied in highest-order last; type arguments matching the name of a previously applied argument will be overridden.
-
apply
Applies a type argument from a parameterized type.- Parameters:
referrer- element referring to the parameterized type, typically itsTypeTemplate.typeVariable- type variable declared byraw type erasure.actualTypeArgument- fromParameterizedType.getActualTypeArguments()relative to position oftypeVariable.
-
seal
Seals type parameters from incoming arguments based on a generic declaration.- Parameters:
genericDeclaration- source element capable of declaring type parametersreferrer- referring element to use with any type parameters generated fromgenericDeclaration
-
typeParameters
Description copied from interface:IuParameterizedElementGets type parameters by name.- Specified by:
typeParametersin interfaceIuParameterizedElement- Specified by:
typeParametersin interfaceParameterizedFacade- Returns:
- map of type parameter facades
-
typeParameter
Description copied from interface:IuParameterizedElementGets a type parameter by name.- Specified by:
typeParameterin interfaceIuParameterizedElement- Specified by:
typeParameterin interfaceParameterizedFacade- Parameters:
name- parameter name- Returns:
- type parameter facade
-