static final <X extends Value> TypeInformation<X> getValueTypeInfo(Class<X> typeClass) {
		if (Value.class.isAssignableFrom(typeClass) && !typeClass.equals(Value.class)) {
			return new ValueTypeInfo<X>(typeClass);
		}
		else {
			throw new InvalidTypesException("The given class is no subclass of " + Value.class.getName());
		}
	}
static final < X extends Value > TypeInformation < X > getValueTypeInfo ( Class < X > typeClass ) { if ( Value . class . isAssignableFrom ( typeClass ) && ! typeClass . equals ( Value . class ) ) { return new ValueTypeInfo < X > ( typeClass ) ; } else { throw new InvalidTypesException ( "The given class is no subclass of " + Value . class . getName ( ) ) ; } }
--------------------------------------------------------------------------------------------