Как создать параметризованный класс в byte-buddy? - PullRequest
1 голос
/ 08 мая 2020

Как создать параметризованный класс в byte-buddy? Например:


    static public class SomeClass < T > {
      T value;
    }



    Class<?> dynamicType = new ByteBuddy()
                   .subclass(Object.class)
                   .defineField("value", ???, Modifier.PUBLIC)
                   .make()
                   .load(Main.class.getClassLoader())
                   .getLoaded();

1 Ответ

1 голос
/ 08 мая 2020

Просто как:

new ByteBuddy().subclass(Object.class)
  .typeVariable("T")
  .defineField("value", TypeDescription.Generic.Builder.typeVariable("T").build(), Modifier.PUBLIC);
...