public interface net.bytebuddy.dynamic.DynamicType$Builder<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: net.bytebuddy.dynamic.DynamicType$Builder
  super_class: java.lang.Object
{
  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> visit(net.bytebuddy.asm.AsmVisitorWrapper);
    descriptor: (Lnet/bytebuddy/asm/AsmVisitorWrapper;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/asm/AsmVisitorWrapper;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                   Name  Flags
      asmVisitorWrapper  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> name(java.lang.String);
    descriptor: (Ljava/lang/String;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      name  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> modifiers(net.bytebuddy.description.modifier.ModifierContributor$ForType[]);
    descriptor: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                     Name  Flags
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> modifiers(java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForType>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                      Name  Flags
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> modifiers(int);
    descriptor: (I)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (I)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
           Name  Flags
      modifiers  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> merge(net.bytebuddy.description.modifier.ModifierContributor$ForType[]);
    descriptor: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                     Name  Flags
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> merge(java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForType>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForType;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                      Name  Flags
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> topLevelType();
    descriptor: ()Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition$ForType<T> innerTypeOf(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition$ForType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/Class<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition$ForType<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition$ForType<T> innerTypeOf(net.bytebuddy.description.type.TypeDescription);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition$ForType;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition$ForType<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition<T> innerTypeOf(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/reflect/Method;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition<TT;>;
    MethodParameters:
        Name  Flags
      method  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition<T> innerTypeOf(java.lang.reflect.Constructor<?>);
    descriptor: (Ljava/lang/reflect/Constructor;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/reflect/Constructor<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition<TT;>;
    MethodParameters:
             Name  Flags
      constructor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition<T> innerTypeOf(net.bytebuddy.description.method.MethodDescription$InDefinedShape);
    descriptor: (Lnet/bytebuddy/description/method/MethodDescription$InDefinedShape;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/method/MethodDescription$InDefinedShape;)Lnet/bytebuddy/dynamic/DynamicType$Builder$InnerTypeDefinition<TT;>;
    MethodParameters:
                   Name  Flags
      methodDescription  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> declaredTypes(java.lang.Class<?>[]);
    descriptor: ([Ljava/lang/Class;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Ljava/lang/Class<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> declaredTypes(net.bytebuddy.description.type.TypeDescription[]);
    descriptor: ([Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> declaredTypes(java.util.List<? extends java.lang.Class<?>>);
    descriptor: (Ljava/util/List;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/List<+Ljava/lang/Class<*>;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
       Name  Flags
      types  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> declaredTypes(java.util.Collection<? extends net.bytebuddy.description.type.TypeDescription>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/type/TypeDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
       Name  Flags
      types  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> noNestMate();
    descriptor: ()Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestHost(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/Class<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestHost(net.bytebuddy.description.type.TypeDescription);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestMembers(java.lang.Class<?>[]);
    descriptor: ([Ljava/lang/Class;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Ljava/lang/Class<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestMembers(net.bytebuddy.description.type.TypeDescription[]);
    descriptor: ([Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/type/TypeDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestMembers(java.util.List<? extends java.lang.Class<?>>);
    descriptor: (Ljava/util/List;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/List<+Ljava/lang/Class<*>;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
       Name  Flags
      types  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> nestMembers(java.util.Collection<? extends net.bytebuddy.description.type.TypeDescription>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/type/TypeDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
       Name  Flags
      types  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> attribute(net.bytebuddy.implementation.attribute.TypeAttributeAppender);
    descriptor: (Lnet/bytebuddy/implementation/attribute/TypeAttributeAppender;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/implementation/attribute/TypeAttributeAppender;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                       Name  Flags
      typeAttributeAppender  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> annotateType(java.lang.annotation.Annotation[]);
    descriptor: ([Ljava/lang/annotation/Annotation;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Ljava/lang/annotation/Annotation;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
            Name  Flags
      annotation  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> annotateType(java.util.List<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/util/List;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/List<+Ljava/lang/annotation/Annotation;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
             Name  Flags
      annotations  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> annotateType(net.bytebuddy.description.annotation.AnnotationDescription[]);
    descriptor: ([Lnet/bytebuddy/description/annotation/AnnotationDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/annotation/AnnotationDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
            Name  Flags
      annotation  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> annotateType(java.util.Collection<? extends net.bytebuddy.description.annotation.AnnotationDescription>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/annotation/AnnotationDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
             Name  Flags
      annotations  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<T> implement(java.lang.reflect.Type[]);
    descriptor: ([Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<TT;>;
    MethodParameters:
               Name  Flags
      interfaceType  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<T> implement(java.util.List<? extends java.lang.reflect.Type>);
    descriptor: (Ljava/util/List;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/List<+Ljava/lang/reflect/Type;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<TT;>;
    MethodParameters:
                Name  Flags
      interfaceTypes  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<T> implement(net.bytebuddy.description.type.TypeDefinition[]);
    descriptor: ([Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<TT;>;
    MethodParameters:
               Name  Flags
      interfaceType  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<T> implement(java.util.Collection<? extends net.bytebuddy.description.type.TypeDefinition>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/type/TypeDefinition;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional<TT;>;
    MethodParameters:
                Name  Flags
      interfaceTypes  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> initializer(net.bytebuddy.implementation.bytecode.ByteCodeAppender);
    descriptor: (Lnet/bytebuddy/implementation/bytecode/ByteCodeAppender;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/implementation/bytecode/ByteCodeAppender;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                  Name  Flags
      byteCodeAppender  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> initializer(net.bytebuddy.implementation.LoadedTypeInitializer);
    descriptor: (Lnet/bytebuddy/implementation/LoadedTypeInitializer;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/implementation/LoadedTypeInitializer;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                       Name  Flags
      loadedTypeInitializer  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> require(net.bytebuddy.description.type.TypeDescription, byte[]);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;[B)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/type/TypeDescription;[B)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                      Name  Flags
      type                  
      binaryRepresentation  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> require(net.bytebuddy.description.type.TypeDescription, byte[], net.bytebuddy.implementation.LoadedTypeInitializer);
    descriptor: (Lnet/bytebuddy/description/type/TypeDescription;[BLnet/bytebuddy/implementation/LoadedTypeInitializer;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/type/TypeDescription;[BLnet/bytebuddy/implementation/LoadedTypeInitializer;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                      Name  Flags
      type                  
      binaryRepresentation  
      typeInitializer       

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> require(net.bytebuddy.dynamic.DynamicType[]);
    descriptor: ([Lnet/bytebuddy/dynamic/DynamicType;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/dynamic/DynamicType;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
               Name  Flags
      auxiliaryType  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> require(java.util.Collection<net.bytebuddy.dynamic.DynamicType>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<Lnet/bytebuddy/dynamic/DynamicType;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                Name  Flags
      auxiliaryTypes  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition<T> typeVariable(java.lang.String);
    descriptor: (Ljava/lang/String;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition<TT;>;
    MethodParameters:
        Name  Flags
      symbol  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition<T> typeVariable(java.lang.String, java.lang.reflect.Type[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;[Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition<TT;>;
    MethodParameters:
        Name  Flags
      symbol  
      bound   

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition<T> typeVariable(java.lang.String, java.util.List<? extends java.lang.reflect.Type>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/util/List<+Ljava/lang/reflect/Type;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition<TT;>;
    MethodParameters:
        Name  Flags
      symbol  
      bounds  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition<T> typeVariable(java.lang.String, net.bytebuddy.description.type.TypeDefinition[]);
    descriptor: (Ljava/lang/String;[Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;[Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition<TT;>;
    MethodParameters:
        Name  Flags
      symbol  
      bound   

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition<T> typeVariable(java.lang.String, java.util.Collection<? extends net.bytebuddy.description.type.TypeDefinition>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/util/Collection<+Lnet/bytebuddy/description/type/TypeDefinition;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$TypeVariableDefinition<TT;>;
    MethodParameters:
        Name  Flags
      symbol  
      bounds  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> transform(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.type.TypeDescription$Generic>, net.bytebuddy.dynamic.Transformer<net.bytebuddy.description.type.TypeVariableToken>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;Lnet/bytebuddy/dynamic/Transformer;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/type/TypeDescription$Generic;>;Lnet/bytebuddy/dynamic/Transformer<Lnet/bytebuddy/description/type/TypeVariableToken;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
             Name  Flags
      matcher      
      transformer  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, java.lang.reflect.Type, net.bytebuddy.description.modifier.ModifierContributor$ForField[]);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
                     Name  Flags
      name                 
      type                 
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, java.lang.reflect.Type, java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForField>);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
                      Name  Flags
      name                  
      type                  
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, java.lang.reflect.Type, int);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
           Name  Flags
      name       
      type       
      modifiers  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, net.bytebuddy.description.type.TypeDefinition, net.bytebuddy.description.modifier.ModifierContributor$ForField[]);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
                     Name  Flags
      name                 
      type                 
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, net.bytebuddy.description.type.TypeDefinition, java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForField>);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForField;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
                      Name  Flags
      name                  
      type                  
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> defineField(java.lang.String, net.bytebuddy.description.type.TypeDefinition, int);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
           Name  Flags
      name       
      type       
      modifiers  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> define(java.lang.reflect.Field);
    descriptor: (Ljava/lang/reflect/Field;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/reflect/Field;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
       Name  Flags
      field  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable<T> define(net.bytebuddy.description.field.FieldDescription);
    descriptor: (Lnet/bytebuddy/description/field/FieldDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/field/FieldDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional$Valuable<TT;>;
    MethodParameters:
       Name  Flags
      field  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional<T> serialVersionUid(long);
    descriptor: (J)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (J)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional<TT;>;
    MethodParameters:
                  Name  Flags
      serialVersionUid  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Valuable<T> field(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.field.FieldDescription>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/field/FieldDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Valuable<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Valuable<T> field(net.bytebuddy.matcher.LatentMatcher<? super net.bytebuddy.description.field.FieldDescription>);
    descriptor: (Lnet/bytebuddy/matcher/LatentMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Valuable;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/LatentMatcher<-Lnet/bytebuddy/description/field/FieldDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Valuable<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> ignoreAlso(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                Name  Flags
      ignoredMethods  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> ignoreAlso(net.bytebuddy.matcher.LatentMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/LatentMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/LatentMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;
    MethodParameters:
                Name  Flags
      ignoredMethods  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, java.lang.reflect.Type, net.bytebuddy.description.modifier.ModifierContributor$ForMethod[]);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                     Name  Flags
      name                 
      returnType           
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, java.lang.reflect.Type, java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForMethod>);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                      Name  Flags
      name                  
      returnType            
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, java.lang.reflect.Type, int);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
            Name  Flags
      name        
      returnType  
      modifiers   

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, net.bytebuddy.description.type.TypeDefinition, net.bytebuddy.description.modifier.ModifierContributor$ForMethod[]);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;[Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                     Name  Flags
      name                 
      returnType           
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, net.bytebuddy.description.type.TypeDefinition, java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForMethod>);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                      Name  Flags
      name                  
      returnType            
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineMethod(java.lang.String, net.bytebuddy.description.type.TypeDefinition, int);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
            Name  Flags
      name        
      returnType  
      modifiers   

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineConstructor(net.bytebuddy.description.modifier.ModifierContributor$ForMethod[]);
    descriptor: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                     Name  Flags
      modifierContributor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineConstructor(java.util.Collection<? extends net.bytebuddy.description.modifier.ModifierContributor$ForMethod>);
    descriptor: (Ljava/util/Collection;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/util/Collection<+Lnet/bytebuddy/description/modifier/ModifierContributor$ForMethod;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
                      Name  Flags
      modifierContributors  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<T> defineConstructor(int);
    descriptor: (I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (I)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial<TT;>;
    MethodParameters:
           Name  Flags
      modifiers  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> define(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/reflect/Method;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
        Name  Flags
      method  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> define(java.lang.reflect.Constructor<?>);
    descriptor: (Ljava/lang/reflect/Constructor;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/reflect/Constructor<*>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
             Name  Flags
      constructor  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> define(net.bytebuddy.description.method.MethodDescription);
    descriptor: (Lnet/bytebuddy/description/method/MethodDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/description/method/MethodDescription;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
                   Name  Flags
      methodDescription  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional<T> defineProperty(java.lang.String, java.lang.reflect.Type);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional<TT;>;
    MethodParameters:
      Name  Flags
      name  
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional<T> defineProperty(java.lang.String, java.lang.reflect.Type, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;Z)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Ljava/lang/reflect/Type;Z)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional<TT;>;
    MethodParameters:
          Name  Flags
      name      
      type      
      readOnly  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional<T> defineProperty(java.lang.String, net.bytebuddy.description.type.TypeDefinition);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional<TT;>;
    MethodParameters:
      Name  Flags
      name  
      type  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional<T> defineProperty(java.lang.String, net.bytebuddy.description.type.TypeDefinition, boolean);
    descriptor: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Z)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljava/lang/String;Lnet/bytebuddy/description/type/TypeDefinition;Z)Lnet/bytebuddy/dynamic/DynamicType$Builder$FieldDefinition$Optional<TT;>;
    MethodParameters:
          Name  Flags
      name      
      type      
      readOnly  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> method(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> constructor(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> invokable(net.bytebuddy.matcher.ElementMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/ElementMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/ElementMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition<T> invokable(net.bytebuddy.matcher.LatentMatcher<? super net.bytebuddy.description.method.MethodDescription>);
    descriptor: (Lnet/bytebuddy/matcher/LatentMatcher;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/matcher/LatentMatcher<-Lnet/bytebuddy/description/method/MethodDescription;>;)Lnet/bytebuddy/dynamic/DynamicType$Builder$MethodDefinition$ImplementationDefinition<TT;>;
    MethodParameters:
         Name  Flags
      matcher  

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> withHashCodeEquals();
    descriptor: ()Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;

  public abstract net.bytebuddy.dynamic.DynamicType$Builder<T> withToString();
    descriptor: ()Lnet/bytebuddy/dynamic/DynamicType$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lnet/bytebuddy/dynamic/DynamicType$Builder<TT;>;

  public abstract net.bytebuddy.dynamic.DynamicType$Unloaded<T> make();
    descriptor: ()Lnet/bytebuddy/dynamic/DynamicType$Unloaded;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()Lnet/bytebuddy/dynamic/DynamicType$Unloaded<TT;>;

  public abstract net.bytebuddy.dynamic.DynamicType$Unloaded<T> make(net.bytebuddy.dynamic.TypeResolutionStrategy);
    descriptor: (Lnet/bytebuddy/dynamic/TypeResolutionStrategy;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/dynamic/TypeResolutionStrategy;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded<TT;>;
    MethodParameters:
                        Name  Flags
      typeResolutionStrategy  

  public abstract net.bytebuddy.dynamic.DynamicType$Unloaded<T> make(net.bytebuddy.pool.TypePool);
    descriptor: (Lnet/bytebuddy/pool/TypePool;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/pool/TypePool;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded<TT;>;
    MethodParameters:
          Name  Flags
      typePool  

  public abstract net.bytebuddy.dynamic.DynamicType$Unloaded<T> make(net.bytebuddy.dynamic.TypeResolutionStrategy, net.bytebuddy.pool.TypePool);
    descriptor: (Lnet/bytebuddy/dynamic/TypeResolutionStrategy;Lnet/bytebuddy/pool/TypePool;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lnet/bytebuddy/dynamic/TypeResolutionStrategy;Lnet/bytebuddy/pool/TypePool;)Lnet/bytebuddy/dynamic/DynamicType$Unloaded<TT;>;
    MethodParameters:
                        Name  Flags
      typeResolutionStrategy  
      typePool                
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "DynamicType.java"
NestHost: net.bytebuddy.dynamic.DynamicType
InnerClasses:
  public abstract InDefinedShape = net.bytebuddy.description.method.MethodDescription$InDefinedShape of net.bytebuddy.description.method.MethodDescription
  public abstract ForField = net.bytebuddy.description.modifier.ModifierContributor$ForField of net.bytebuddy.description.modifier.ModifierContributor
  public abstract ForMethod = net.bytebuddy.description.modifier.ModifierContributor$ForMethod of net.bytebuddy.description.modifier.ModifierContributor
  public abstract ForType = net.bytebuddy.description.modifier.ModifierContributor$ForType of net.bytebuddy.description.modifier.ModifierContributor
  public abstract Generic = net.bytebuddy.description.type.TypeDescription$Generic of net.bytebuddy.description.type.TypeDescription
  public abstract Builder = net.bytebuddy.dynamic.DynamicType$Builder of net.bytebuddy.dynamic.DynamicType
  public abstract AbstractBase = net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase of net.bytebuddy.dynamic.DynamicType$Builder
  public abstract FieldDefinition = net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition of net.bytebuddy.dynamic.DynamicType$Builder
  public abstract Optional = net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional of net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition
  public abstract Valuable = net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional$Valuable of net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Optional
  public abstract Valuable = net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition$Valuable of net.bytebuddy.dynamic.DynamicType$Builder$FieldDefinition
  public abstract InnerTypeDefinition = net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition of net.bytebuddy.dynamic.DynamicType$Builder
  public abstract ForType = net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition$ForType of net.bytebuddy.dynamic.DynamicType$Builder$InnerTypeDefinition
  public abstract MethodDefinition = net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition of net.bytebuddy.dynamic.DynamicType$Builder
  public abstract ImplementationDefinition = net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition of net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition
  public abstract Optional = net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition$Optional of net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ImplementationDefinition
  public abstract ParameterDefinition = net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition of net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition
  public abstract Initial = net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition$Initial of net.bytebuddy.dynamic.DynamicType$Builder$MethodDefinition$ParameterDefinition
  public abstract TypeVariableDefinition = net.bytebuddy.dynamic.DynamicType$Builder$TypeVariableDefinition of net.bytebuddy.dynamic.DynamicType$Builder
  public abstract Unloaded = net.bytebuddy.dynamic.DynamicType$Unloaded of net.bytebuddy.dynamic.DynamicType