From the additional information, you provided on GitHub, this is how you would approach this:
To create a StringBuilder
you call MethodCall.construct(StringBuilder.class.getConstructor())
You can then call the append to the string builder like: MethodCall.invoke(StringBuilder.class.getMethod("append", Object.class)).onMethodCall(...).withField(...)
where you start with the initial string builder and then reiterate for every field or constant supplying the last input to the next instance.
You would have to adjust the method based on the field type, if the type is primitive, for this to work. In the end, you have to do a final method call on toString
.