Interface ParameterList<T extends ParameterDescription>
- Type Parameters:
T- The type of parameter descriptions represented by this list.
- All Superinterfaces:
Collection<T>, FilterableList<T, ParameterList<T>>, Iterable<T>, List<T>, SequencedCollection<T>
- All Known Implementing Classes:
ParameterList.AbstractBase, ParameterList.Empty, ParameterList.Explicit, ParameterList.Explicit.ForTypes, ParameterList.ForLoadedExecutable, ParameterList.ForLoadedExecutable.OfConstructor, ParameterList.ForLoadedExecutable.OfLegacyVmConstructor, ParameterList.ForLoadedExecutable.OfLegacyVmMethod, ParameterList.ForLoadedExecutable.OfMethod, ParameterList.ForTokens, ParameterList.TypeSubstituting, Transformer.ForMethod.TransformedMethod.TransformedParameterList, TypePool.Default.LazyTypeDescription.LazyMethodDescription.LazyParameterList
public interface ParameterList<T extends ParameterDescription>
extends FilterableList<T, ParameterList<T>>
Represents a list of parameters of a method or a constructor.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classAn base implementation for aParameterList.static classParameterList.Empty<S extends ParameterDescription>An empty list of parameters.static classParameterList.Explicit<S extends ParameterDescription>A list of explicitly provided parameter descriptions.static classRepresents a list of parameters for an executable, i.e.static classA list of parameter descriptions for a list of detached tokens.static classA list of parameter descriptions that yieldsParameterDescription.TypeSubstituting. -
Method Summary
Modifier and TypeMethodDescriptionReturns this list of these parameter descriptions resolved to their defined shape.asTokenList(ElementMatcher<? super TypeDescription> matcher) Transforms the list of parameter descriptions into a list of detached tokens.Transforms this list of parameters into a list of the types of the represented parameters.booleanChecks if all parameters in this list define both an explicit name and an explicit modifier.Methods inherited from interface Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface FilterableList
filter, getOnly, subListMethods inherited from interface List
add, add, addAll, addAll, addFirst, addLast, clear, contains, containsAll, equals, get, getFirst, getLast, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeFirst, removeLast, replaceAll, retainAll, reversed, set, size, sort, spliterator, toArray, toArray
-
Method Details
-
asTypeList
TypeList.Generic asTypeList()Transforms this list of parameters into a list of the types of the represented parameters.- Returns:
- A list of types representing the parameters of this list.
-
asTokenList
ByteCodeElement.Token.TokenList<ParameterDescription.Token> asTokenList(ElementMatcher<? super TypeDescription> matcher) Transforms the list of parameter descriptions into a list of detached tokens. All types that are matched by the provided target type matcher are substituted byTargetType.- Parameters:
matcher- A matcher that indicates type substitution.- Returns:
- The transformed token list.
-
asDefined
ParameterList<ParameterDescription.InDefinedShape> asDefined()Returns this list of these parameter descriptions resolved to their defined shape.- Returns:
- A list of parameters in their defined shape.
-
hasExplicitMetaData
boolean hasExplicitMetaData()Checks if all parameters in this list define both an explicit name and an explicit modifier.- Returns:
trueif all parameters in this list define both an explicit name and an explicit modifier.
-