Seems like there is a problem with parameterized Interfaces.
io.vertx.core.Promise, which is an interface, will yield the following results when going through codegen:
((ClassTypeInfo) type).getParams().size() => 1
((ClassTypeInfo) type).isParameterized() => false
Clearly, isParameterized should yield true.
I am still investigating to find out what's going on.