code: public <T extends Enum<T>> T readNullEnum(Class<T> enumType) throws IOException {
  		try {
  			return readBoolean() ? Enum.valueOf(enumType, readUTF()) : null;
  		} catch(IllegalArgumentException err) {
  			throw new IOException(err);
  		}
  	}
docs: Reads an {@link Enum}, represented by its {@link Enum#name()},
  supporting {@code null}.