code: public DynamicType.Builder<?> subclass(Type superType) {
          return subclass(TypeDefinition.Sort.describe(superType));
      }
docs: <p>
  Creates a new builder for subclassing the provided type. If the provided type is an interface, a new class implementing
  this interface type is created.
  </p>
  <p>
  When extending a class, Byte Buddy imitates all visible constructors of the subclassed type. Any constructor is implemented
  to only invoke its super type constructor of equal signature. Another behavior can be specified by supplying an explicit
  {@link ConstructorStrategy} by {@link ByteBuddy#subclass(Type, ConstructorStrategy)}.
  </p>
  <p>
  <b>Note</b>: This methods implements the supplied types <i>as is</i>, i.e. any {@link Class} values are implemented
  as raw types if they declare type variables.
  </p>
  <p>
  <b>Note</b>: Byte Buddy does not cache previous subclasses but will attempt the generation of a new subclass. For caching
  types, a external cache or {@link TypeCache} should be used.
  </p>
  
  @param superType The super class or interface type to extend. The type must be a raw type or parameterized type. All type
  variables that are referenced by the generic type must be declared by the generated subclass before creating
  the type.
  @return A type builder for creating a new class extending the provided class or interface.