Class MethodDescription.Token

java.lang.Object
net.bytebuddy.description.method.MethodDescription.Token
All Implemented Interfaces:
ByteCodeElement.Token<MethodDescription.Token>
Enclosing interface:
MethodDescription

public static class MethodDescription.Token extends Object implements ByteCodeElement.Token<MethodDescription.Token>
A token representing a method's properties detached from a type.
  • Field Details

    • name

      private final String name
      The internal name of the represented method.
    • modifiers

      private final int modifiers
      The modifiers of the represented method.
    • typeVariableTokens

      private final List<? extends TypeVariableToken> typeVariableTokens
      A list of tokens representing the method's type variables.
    • returnType

      private final TypeDescription.Generic returnType
      The return type of the represented method.
    • parameterTokens

      private final List<? extends ParameterDescription.Token> parameterTokens
      The parameter tokens of the represented method.
    • exceptionTypes

      private final List<? extends TypeDescription.Generic> exceptionTypes
      The exception types of the represented method.
    • annotations

      private final List<? extends AnnotationDescription> annotations
      The annotations of the represented method.
    • defaultValue

      @MaybeNull private final AnnotationValue<?,?> defaultValue
      The default value of the represented method or null if no such value exists.
    • receiverType

      @MaybeNull private final TypeDescription.Generic receiverType
      The receiver type of the represented method or null if the receiver type is implicit.
  • Constructor Details

    • Token

      public Token(int modifiers)
      Creates a new method token representing a constructor without any parameters, exception types, type variables or annotations. All types must be represented in an detached format.
      Parameters:
      modifiers - The constructor's modifiers.
    • Token

      public Token(String name, int modifiers, TypeDescription.Generic returnType)
      Creates a new method token representing a method without any parameters, exception types, type variables or annotations. All types must be represented in an detached format.
      Parameters:
      name - The name of the method.
      modifiers - The modifiers of the method.
      returnType - The return type of the method.
    • Token

      public Token(String name, int modifiers, TypeDescription.Generic returnType, List<? extends TypeDescription.Generic> parameterTypes)
      Creates a new method token with simple values. All types must be represented in an detached format.
      Parameters:
      name - The internal name of the represented method.
      modifiers - The modifiers of the represented method.
      returnType - The return type of the represented method.
      parameterTypes - The parameter types of this method.
    • Token

      public Token(String name, int modifiers, List<? extends TypeVariableToken> typeVariableTokens, TypeDescription.Generic returnType, List<? extends ParameterDescription.Token> parameterTokens, List<? extends TypeDescription.Generic> exceptionTypes, List<? extends AnnotationDescription> annotations, @MaybeNull AnnotationValue<?,?> defaultValue, @MaybeNull TypeDescription.Generic receiverType)
      Creates a new token for a method description. All types must be represented in an detached format.
      Parameters:
      name - The internal name of the represented method.
      modifiers - The modifiers of the represented method.
      typeVariableTokens - The type variables of the the represented method.
      returnType - The return type of the represented method.
      parameterTokens - The parameter tokens of the represented method.
      exceptionTypes - The exception types of the represented method.
      annotations - The annotations of the represented method.
      defaultValue - The default value of the represented method or null if no such value exists.
      receiverType - The receiver type of the represented method or null if the receiver type is implicit.
  • Method Details

    • getName

      public String getName()
      Returns the internal name of the represented method.
      Returns:
      The internal name of the represented method.
    • getModifiers

      public int getModifiers()
      Returns the modifiers of the represented method.
      Returns:
      The modifiers of the represented method.
    • getTypeVariableTokens

      public ByteCodeElement.Token.TokenList<TypeVariableToken> getTypeVariableTokens()
      Returns the type variables of this method token.
      Returns:
      A a list of tokens representing the method's type variables.
    • getReturnType

      public TypeDescription.Generic getReturnType()
      Returns the return type of the represented method.
      Returns:
      The return type of the represented method.
    • getParameterTokens

      Returns the parameter tokens of the represented method.
      Returns:
      The parameter tokens of the represented method.
    • getExceptionTypes

      public TypeList.Generic getExceptionTypes()
      Returns the exception types of the represented method.
      Returns:
      The exception types of the represented method.
    • getAnnotations

      public AnnotationList getAnnotations()
      Returns the annotations of the represented method.
      Returns:
      The annotations of the represented method.
    • getDefaultValue

      @MaybeNull public AnnotationValue<?,?> getDefaultValue()
      Returns the default value of the represented method.
      Returns:
      The default value of the represented method or null if no such value exists.
    • getReceiverType

      @MaybeNull public TypeDescription.Generic getReceiverType()
      Returns the receiver type of this token or null if the receiver type is implicit.
      Returns:
      The receiver type of this token or null if the receiver type is implicit.
    • accept

      Transforms the types represented by this token by applying the given visitor to them.
      Specified by:
      accept in interface ByteCodeElement.Token<MethodDescription.Token>
      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.
    • asSignatureToken

      public MethodDescription.SignatureToken asSignatureToken(TypeDescription declaringType)
      Creates a signature token that represents the method that is represented by this token.
      Parameters:
      declaringType - The declaring type of the method that this token represents.
      Returns:
      A signature token representing this token.
    • 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