@@ -25,19 +25,19 @@ use serde::{Deserialize, Serialize};
2525#[ cfg( feature = "visitor" ) ]
2626use sqlparser_derive:: { Visit , VisitMut } ;
2727
28- use crate :: ast:: { display_comma_separated, ObjectName , StructField , UnionField , Value } ;
28+ use crate :: ast:: { display_comma_separated, Expr , ObjectName , StructField , UnionField } ;
2929
3030use super :: { value:: escape_single_quote_string, ColumnDef } ;
3131
3232#[ derive( Debug , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
3333#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
3434#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
35- pub enum EnumValue {
36- String ( String ) ,
35+ pub enum EnumMember {
36+ Name ( String ) ,
3737 /// ClickHouse allows to specify an integer value for each enum value.
3838 ///
3939 /// [clickhouse](https://clickhouse.com/docs/en/sql-reference/data-types/enum)
40- Pair ( String , Value ) ,
40+ NameValue ( String , Expr ) ,
4141}
4242
4343/// SQL data types
@@ -311,7 +311,7 @@ pub enum DataType {
311311 /// [clickhouse]: https://clickhouse.com/docs/en/sql-reference/data-types/nested-data-structures/nested
312312 Nested ( Vec < ColumnDef > ) ,
313313 /// Enums
314- Enum ( Vec < EnumValue > , Option < i64 > ) ,
314+ Enum ( Vec < EnumMember > , Option < u32 > ) ,
315315 /// Set
316316 Set ( Vec < String > ) ,
317317 /// Struct
@@ -524,8 +524,8 @@ impl fmt::Display for DataType {
524524 write ! ( f, ", " ) ?;
525525 }
526526 match v {
527- EnumValue :: String ( v) => write ! ( f, "'{}'" , escape_single_quote_string( v) ) ?,
528- EnumValue :: Pair ( v, i) => {
527+ EnumMember :: Name ( v) => write ! ( f, "'{}'" , escape_single_quote_string( v) ) ?,
528+ EnumMember :: NameValue ( v, i) => {
529529 write ! ( f, "'{}' = {}" , escape_single_quote_string( v) , i) ?
530530 }
531531 }
0 commit comments