@Override
 public JvmTypeReference toTypeReference() {
   TypesFactory typesFactory = getTypesFactory();
   JvmWildcardTypeReference result = typesFactory.createJvmWildcardTypeReference();
   if (upperBounds != null && !upperBounds.isEmpty()) {
     for (LightweightTypeReference typeArgument : upperBounds) {
       JvmUpperBound constraint = typesFactory.createJvmUpperBound();
       constraint.setTypeReference(typeArgument.getWrapperTypeIfPrimitive().toTypeReference());
       result.getConstraints().add(constraint);
     }
   }
   if (lowerBound != null) {
     JvmLowerBound constraint = typesFactory.createJvmLowerBound();
     constraint.setTypeReference(lowerBound.getWrapperTypeIfPrimitive().toTypeReference());
     result.getConstraints().add(constraint);
   }
   return result;
 }
Пример #2
0
 public LightweightTypeReference convertToList(ArrayTypeReference type) {
   LightweightTypeReference componentType = type.getComponentType();
   LightweightTypeReference wrapper = componentType.getWrapperTypeIfPrimitive();
   ITypeReferenceOwner owner = type.getOwner();
   JvmType listType =
       type.getServices()
           .getTypeReferences()
           .findDeclaredType(List.class, owner.getContextResourceSet());
   if (listType == null) {
     return owner.newUnknownTypeReference(List.class.getName());
   }
   ParameterizedTypeReference result = owner.newParameterizedTypeReference(listType);
   result.addTypeArgument(wrapper);
   return result;
 }