docs: public static Object readNativeValue(Type type, Block block, int position)
      {
          Class<?> javaType = type.getJavaType();
  
          if (block.isNull(position)) {
              return null;
          }
          if (javaType == long.class) {
              return type.getLong(block, position);
          }
          if (javaType == double.class) {
              return type.getDouble(block, position);
          }
          if (javaType == boolean.class) {
              return type.getBoolean(block, position);
          }
          if (javaType == Slice.class) {
              return type.getSlice(block, position);
          }
          return type.getObject(block, position);
      }