public static class GenericElement.Builder
extends java.lang.Object
GenericElement instances.
Simple type parameters can be added with addTypeParameter(String, TypeMirror...).
For self-referential bounds, e.g. Comparable<E extends Comparable<E>>, add the
parameters first, then create the bounds with getTypeParameter(String),
GenericElementParameter.asType() and asType().
GenericElement.Builder typeBuilder =
new GenericElement.Builder(QualifiedName.of("java.lang", "Comparable"))
.addTypeParameter("E");
typeBuilder.getTypeParameter("E").addBound(typeBuilder.asType());
GenericElement type = typeBuilder.build();
| Constructor and Description |
|---|
Builder(org.inferred.internal.source.QualifiedName qualifiedName) |
| Modifier and Type | Method and Description |
|---|---|
GenericElement.Builder |
addTypeParameter(java.lang.String simpleName,
javax.lang.model.type.TypeMirror... bounds)
Adds type parameter
simpleName with lower bounds bounds. |
GenericMirror |
asType() |
GenericElement |
build() |
GenericElementParameter.Builder |
getTypeParameter(java.lang.String simpleName)
Returns a builder for type parameter
simpleName, creating one if necessary. |
public GenericElement.Builder addTypeParameter(java.lang.String simpleName, javax.lang.model.type.TypeMirror... bounds)
simpleName with lower bounds bounds.java.lang.IllegalStateException - if asType() or build() have already been calledjava.lang.IllegalStateException - if a type parameter already exists with this namepublic GenericElementParameter.Builder getTypeParameter(java.lang.String simpleName)
simpleName, creating one if necessary.public GenericMirror asType()
public GenericElement build()