Type resolvedType = resolveTypeVariable(typeVariable, this); Type resolvedSubType = resolveTypeVariable(typeVariable, subType); GenericType<?> resolvedGenericType = create(resolvedType); GenericType<?> resolvedGenericSubType = create(resolvedSubType); if (!resolvedGenericType.isAssignableFrom(resolvedGenericSubType)) { return false;