Class TypeVariableToken

java.lang.Object
net.bytebuddy.description.type.TypeVariableToken
All Implemented Interfaces:
ByteCodeElement.Token<TypeVariableToken>

public class TypeVariableToken extends Object implements ByteCodeElement.Token<TypeVariableToken>
A tokenized representation of a type variable.
  • Field Details

  • Constructor Details

    • TypeVariableToken

      public TypeVariableToken(String symbol, List<? extends TypeDescription.Generic> bounds)
      Creates a new type variable token without annotations.
      Parameters:
      symbol - The type variable's symbol.
      bounds - The type variable's upper bounds.
    • TypeVariableToken

      public TypeVariableToken(String symbol, List<? extends TypeDescription.Generic> bounds, List<? extends AnnotationDescription> annotations)
      Creates a new type variable token.
      Parameters:
      symbol - The type variable's symbol.
      bounds - The type variable's upper bounds.
      annotations - The annotations of the type variable.
  • Method Details

    • of

      public static TypeVariableToken of(TypeDescription.Generic typeVariable, ElementMatcher<? super TypeDescription> matcher)
      Transforms a type variable into a type variable token with its bounds detached.
      Parameters:
      typeVariable - A type variable in its attached state.
      matcher - A matcher that identifies types to detach from the upper bound types.
      Returns:
      A token representing the detached type variable.
    • getSymbol

      public String getSymbol()
      Returns the type variable's symbol.
      Returns:
      The type variable's symbol.
    • getBounds

      public TypeList.Generic getBounds()
      Returns the type variable's upper bounds.
      Returns:
      The type variable's upper bounds.
    • getAnnotations

      public AnnotationList getAnnotations()
      Returns the annotations on this type variable.
      Returns:
      The annotations on this variable.
    • accept

      Transforms the types represented by this token by applying the given visitor to them.
      Specified by:
      accept in interface ByteCodeElement.Token<TypeVariableToken>
      Parameters:
      visitor - The visitor to transform all types that are represented by this token.
      Returns:
      This token with all of its represented types transformed by the supplied visitor.
    • hashCode

      @Enhance("hashCode") public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(@MaybeNull Object other)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object