fn optional_primitive<T>( array: &StructArray, name: &str, row: usize, ) -> Result<Option<T::Native>>where T: ArrowPrimitiveType,