A type parameter of a class, method or function.
The type parameter may optionally declare a type variance
(without one, it is invariant) and/or a default type argument
(used when the use-site declares some but not all type arguments).
Examples:
out Element out Absent=Null
Anything
Object
TypeParameter
Node
Object
Anything
no subtypes hierarchy
Initializer |
TypeParameter(TypeName parameterName, Variance? variance = null, Type? defaultArgument = null) Parameters:
|
Attributes | |
children | shared actual [Variance, UIdentifier, Type=]|[UIdentifier, Type=] children The child nodes of this node. Refines Node.children |
defaultArgument | shared Type? defaultArgument The default type argument for the type parameter,
or |
hash | shared actual Integer hash The hash value of the value, which allows the value to be an element of a hash-based set or key of a hash-based map. Implementations must respect the constraint that:
Therefore, a class which refines In general, Note that when executing on a Java Virtual Machine, the
64-bit Refines Object.hash |
parameterName | shared TypeName parameterName The name of the type parameter. |
variance | shared Variance? variance The variance of the type parameter,
or |
Inherited Attributes |
Attributes inherited from: Node |
Attributes inherited from: Object hash , string |
Methods | |
copy | shared TypeParameter copy(TypeName parameterName = ..., Variance? variance = ..., Type? defaultArgument = ...) Parameters:
|
equals | shared actual Boolean equals(Object that) Determine if two values are equal. Implementations should respect the constraints that:
Furthermore it is recommended that implementations
ensure that if A class which explicitly refines Note that an implementation of Refines Object.equals |
transform | shared actual Result transform<out Result>(Transformer<Result> transformer) Transform this node with the given If you have a Refines Node.transform |
visit | shared actual void visit(Visitor visitor) Visit this node with the given Refines Node.visit |
Inherited Methods |
Methods inherited from: Node |
Methods inherited from: Object equals |