@@ -32,6 +32,7 @@ use super::{value::escape_single_quote_string, ColumnDef};
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+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_enum_member" ) ) ]
3536pub enum EnumMember {
3637 Name ( String ) ,
3738 /// ClickHouse allows to specify an integer value for each enum value.
@@ -44,6 +45,7 @@ pub enum EnumMember {
4445#[ derive( Debug , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
4546#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
4647#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
48+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_data_type" ) ) ]
4749pub enum DataType {
4850 /// Table type in [PostgreSQL], e.g. CREATE FUNCTION RETURNS TABLE(...).
4951 ///
@@ -852,6 +854,7 @@ fn format_clickhouse_datetime_precision_and_timezone(
852854#[ derive( Debug , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
853855#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
854856#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
857+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_struct_bracket_kind" ) ) ]
855858pub enum StructBracketKind {
856859 /// Example: `STRUCT(a INT, b STRING)`
857860 Parentheses ,
@@ -866,6 +869,7 @@ pub enum StructBracketKind {
866869#[ derive( Debug , Copy , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
867870#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
868871#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
872+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_timezone_info" ) ) ]
869873pub enum TimezoneInfo {
870874 /// No information about time zone, e.g. TIMESTAMP
871875 None ,
@@ -956,6 +960,7 @@ impl fmt::Display for IntervalFields {
956960#[ derive( Debug , Copy , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
957961#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
958962#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
963+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_exact_number_info" ) ) ]
959964pub enum ExactNumberInfo {
960965 /// No additional information, e.g. `DECIMAL`
961966 None ,
@@ -987,6 +992,7 @@ impl fmt::Display for ExactNumberInfo {
987992#[ derive( Debug , Copy , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
988993#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
989994#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
995+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_character_length" ) ) ]
990996pub enum CharacterLength {
991997 IntegerLength {
992998 /// Default (if VARYING) or maximum (if not VARYING) length
@@ -1021,6 +1027,7 @@ impl fmt::Display for CharacterLength {
10211027#[ derive( Debug , Copy , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
10221028#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
10231029#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
1030+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_char_length_units" ) ) ]
10241031pub enum CharLengthUnits {
10251032 /// CHARACTERS unit
10261033 Characters ,
@@ -1044,6 +1051,7 @@ impl fmt::Display for CharLengthUnits {
10441051#[ derive( Debug , Copy , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
10451052#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
10461053#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
1054+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_binary_length" ) ) ]
10471055pub enum BinaryLength {
10481056 IntegerLength {
10491057 /// Default (if VARYING)
@@ -1074,6 +1082,7 @@ impl fmt::Display for BinaryLength {
10741082#[ derive( Debug , Clone , PartialEq , PartialOrd , Eq , Ord , Hash ) ]
10751083#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
10761084#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
1085+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_array_elem_type_def" ) ) ]
10771086pub enum ArrayElemTypeDef {
10781087 /// `ARRAY`
10791088 None ,
@@ -1092,6 +1101,7 @@ pub enum ArrayElemTypeDef {
10921101#[ derive( Debug , Copy , Clone , PartialEq , Eq , Hash , PartialOrd , Ord ) ]
10931102#[ cfg_attr( feature = "serde" , derive( Serialize , Deserialize ) ) ]
10941103#[ cfg_attr( feature = "visitor" , derive( Visit , VisitMut ) ) ]
1104+ #[ cfg_attr( feature = "visitor" , visit( with = "visit_geometric_type_kind" ) ) ]
10951105pub enum GeometricTypeKind {
10961106 Point ,
10971107 Line ,
0 commit comments