public class OwnedConverter extends AbstractXtypeReferenceVisitor<LightweightTypeReference> implements com.google.common.base.Function<JvmTypeReference,LightweightTypeReference>
AbstractTypeReferenceVisitor.InheritanceAware<Result>
Constructor and Description |
---|
OwnedConverter(ITypeReferenceOwner owner)
.
|
OwnedConverter(ITypeReferenceOwner owner,
boolean keepUnboundWildcards) |
doVisitCompoundTypeReference
doVisitDelegateTypeReference, doVisitSpecializedTypeReference, visit
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
doVisitCompoundTypeReference, doVisitDelegateTypeReference, doVisitSpecializedTypeReference, visit
public OwnedConverter(ITypeReferenceOwner owner)
new OwnedConverter(owner, false)
.public OwnedConverter(ITypeReferenceOwner owner, boolean keepUnboundWildcards)
keepUnboundWildcards
- true
if unbound wildcards should be converted to ? extends Object
.
Unbound information is required to do proper cast validation. In other cases, the compiler should
add the upper bound object.WildcardType.getUpperBounds()
public ITypeReferenceOwner getOwner()
public LightweightTypeReference toLightweightReference(JvmTypeReference reference)
public LightweightTypeReference toRawLightweightReference(JvmType type)
public LightweightTypeReference apply(JvmTypeReference reference)
apply
in interface com.google.common.base.Function<JvmTypeReference,LightweightTypeReference>
public LightweightTypeReference doVisitAnyTypeReference(JvmAnyTypeReference reference)
doVisitAnyTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitAnyTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
public LightweightTypeReference doVisitGenericArrayTypeReference(JvmGenericArrayTypeReference reference)
doVisitGenericArrayTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitGenericArrayTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
public LightweightTypeReference doVisitMultiTypeReference(JvmMultiTypeReference reference)
doVisitMultiTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitMultiTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
protected LightweightTypeReference doVisitCompoundReference(JvmCompoundTypeReference reference, boolean synonym)
public LightweightTypeReference doVisitComputedTypeReference(XComputedTypeReference reference)
doVisitComputedTypeReference
in interface XtypeReferenceVisitor<LightweightTypeReference>
doVisitComputedTypeReference
in class AbstractXtypeReferenceVisitor<LightweightTypeReference>
public LightweightTypeReference doVisitParameterizedTypeReference(JvmParameterizedTypeReference reference)
doVisitParameterizedTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitParameterizedTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
protected JvmType getType(JvmTypeReference reference)
public LightweightTypeReference doVisitSynonymTypeReference(JvmSynonymTypeReference reference)
doVisitSynonymTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitSynonymTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
public LightweightTypeReference doVisitWildcardTypeReference(JvmWildcardTypeReference reference)
doVisitWildcardTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitWildcardTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
public LightweightTypeReference doVisitFunctionTypeReference(XFunctionTypeRef reference)
doVisitFunctionTypeReference
in interface XtypeReferenceVisitor<LightweightTypeReference>
doVisitFunctionTypeReference
in class AbstractXtypeReferenceVisitor<LightweightTypeReference>
public LightweightTypeReference doVisitUnknownTypeReference(JvmUnknownTypeReference reference)
doVisitUnknownTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitUnknownTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>
protected LightweightTypeReference handleNullReference()
handleNullReference
in class AbstractTypeReferenceVisitor<LightweightTypeReference>
protected ParameterizedTypeReference getObjectReference()
public LightweightTypeReference doVisitTypeReference(JvmTypeReference reference)
doVisitTypeReference
in interface ITypeReferenceVisitor<LightweightTypeReference>
doVisitTypeReference
in class AbstractTypeReferenceVisitor.InheritanceAware<LightweightTypeReference>