alamb commented on code in PR #8072:
URL: https://github.com/apache/arrow-rs/pull/8072#discussion_r2263812443


##########
parquet/src/basic.rs:
##########
@@ -238,15 +362,149 @@ pub enum LogicalType {
     /// A 16-bit floating point number.
     Float16,
     /// A Variant value.
-    Variant,
+    Variant {
+        /// The version of the variant specification that the variant was 
written with.
+        specification_version: Option<i8>,
+    },
     /// A geospatial feature in the Well-Known Binary (WKB) format with 
linear/planar edges interpolation.
-    Geometry,
+    Geometry {
+        /// A custom CRS. If unset the defaults to `OGC:CRS84`.
+        crs: Option<String>,
+    },
     /// A geospatial feature in the WKB format with an explicit 
(non-linear/non-planar) edges interpolation.
-    Geography,
+    Geography {
+        /// A custom CRS. If unset the defaults to `OGC:CRS84`.
+        crs: Option<String>,
+        /// An optional algorithm can be set to correctly interpret edges 
interpolation
+        /// of the geometries. If unset, the algorithm defaults to 
`SPHERICAL``.
+        algorithm: Option<EdgeInterpolationAlgorithm>,
+    },
+    /// For forward compatibility; used when an unknown union value is 
encountered.
+    _Unknown {
+        /// The field id encountered when parsing the unknown logical type.
+        field_id: i16,
+    },
+}
+
+impl<'a> TryFrom<&mut ThriftCompactInputProtocol<'a>> for LogicalType {
+    type Error = ParquetError;
+    fn try_from(prot: &mut ThriftCompactInputProtocol<'a>) -> Result<Self> {

Review Comment:
   is this an example of what it takes to parse a thrift definition using this 
new structure?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to