tustvold opened a new issue, #1554:
URL: https://github.com/apache/arrow-rs/issues/1554

   **Is your feature request related to a problem or challenge? Please describe 
what you are trying to do.**
   
   `LogicalType` is defined as
   
   ```
   pub enum LogicalType {
       STRING(StringType),
       MAP(MapType),
       LIST(ListType),
       ENUM(EnumType),
       DECIMAL(DecimalType),
       DATE(DateType),
       TIME(TimeType),
       TIMESTAMP(TimestampType),
       INTEGER(IntType),
       UNKNOWN(NullType),
       JSON(JsonType),
       BSON(BsonType),
       UUID(UUIDType),
   }
   ```
   
   Where the inner structs are actually defined by `parquet_format`. This not 
only requires an additional crate in scope, but also a number of these are 
actually empty structs resulting in constructions like
   
   ```
   LogicalType::String(Default::default)
   ```
   
   **Describe the solution you'd like**
   
   I would like to change the signature to be instead
   
   ```
   pub enum LogicalType {
       STRING,
       MAP,
       LIST,
       ENUM,
       DECIMAL {
           scale: i32,
           precision: i32,
       },
       DATE,
       TIME {
           is_adjusted_to_u_t_c: bool,
           unit: TimeUnit,
       },
       TIMESTAMP {
           is_adjusted_to_u_t_c: bool,
           unit: TimeUnit,
       },
       INTEGER {
           bit_width: i8,
           is_signed: bool,
       },
       UNKNOWN,
       JSON,
       BSON,
       UUID,
   }
   ```
   
   **Describe alternatives you've considered**
   
   We could leave the enumeration unchanged
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to