code: private boolean isRawType(JvmTypeParameter current, RecursionGuard<JvmTypeParameter> guard) {
  		if (guard.tryNext(current)) {
  			List<JvmTypeConstraint> constraints = current.getConstraints();
  			for(int i = 0, size = constraints.size(); i < size; i++) {
  				JvmTypeConstraint constraint = constraints.get(i);
  				if (constraint.eClass() == TypesPackage.Literals.JVM_UPPER_BOUND && constraint.getTypeReference() != null) {
  					JvmTypeReference superType = constraint.getTypeReference();
  					JvmType rawSuperType = superType.getType();
  					if (rawSuperType != null) {
  						if (rawSuperType.eClass() == TypesPackage.Literals.JVM_TYPE_PARAMETER) {
  							if (isRawType((JvmTypeParameter) rawSuperType, guard)) {
  								return true;
  							}
  						}
  						if (rawSuperType.eClass() == TypesPackage.Literals.JVM_GENERIC_TYPE) {
  							if (!((JvmGenericType) rawSuperType).getTypeParameters().isEmpty()) {
  								if (superType.eClass() == TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE) {
  									JvmParameterizedTypeReference casted = (JvmParameterizedTypeReference) superType;
  									if (casted.getArguments().isEmpty()) {
  										return true;
  									}
  								}
  							}
  						}
  					}
  				}
  			}
  		}
  		return false;
  	}
docs: Here we already know that we don't have type arguments