@@ -16,6 +16,7 @@ pub enum DynamicColumn {
16
16
I64 ( Column < i64 > ) ,
17
17
U64 ( Column < u64 > ) ,
18
18
F64 ( Column < f64 > ) ,
19
+ U128 ( Column < u128 > ) ,
19
20
IpAddr ( Column < Ipv6Addr > ) ,
20
21
DateTime ( Column < DateTime > ) ,
21
22
Bytes ( BytesColumn ) ,
@@ -30,6 +31,7 @@ impl fmt::Debug for DynamicColumn {
30
31
DynamicColumn :: I64 ( col) => write ! ( f, " {col:?}" ) ?,
31
32
DynamicColumn :: U64 ( col) => write ! ( f, " {col:?}" ) ?,
32
33
DynamicColumn :: F64 ( col) => write ! ( f, "{col:?}" ) ?,
34
+ DynamicColumn :: U128 ( col) => write ! ( f, "{col:?}" ) ?,
33
35
DynamicColumn :: IpAddr ( col) => write ! ( f, "{col:?}" ) ?,
34
36
DynamicColumn :: DateTime ( col) => write ! ( f, "{col:?}" ) ?,
35
37
DynamicColumn :: Bytes ( col) => write ! ( f, "{col:?}" ) ?,
@@ -46,6 +48,7 @@ impl DynamicColumn {
46
48
DynamicColumn :: I64 ( c) => & c. index ,
47
49
DynamicColumn :: U64 ( c) => & c. index ,
48
50
DynamicColumn :: F64 ( c) => & c. index ,
51
+ DynamicColumn :: U128 ( c) => & c. index ,
49
52
DynamicColumn :: IpAddr ( c) => & c. index ,
50
53
DynamicColumn :: DateTime ( c) => & c. index ,
51
54
DynamicColumn :: Bytes ( c) => & c. ords ( ) . index ,
@@ -63,6 +66,7 @@ impl DynamicColumn {
63
66
DynamicColumn :: I64 ( c) => c. values . num_vals ( ) ,
64
67
DynamicColumn :: U64 ( c) => c. values . num_vals ( ) ,
65
68
DynamicColumn :: F64 ( c) => c. values . num_vals ( ) ,
69
+ DynamicColumn :: U128 ( c) => c. values . num_vals ( ) ,
66
70
DynamicColumn :: IpAddr ( c) => c. values . num_vals ( ) ,
67
71
DynamicColumn :: DateTime ( c) => c. values . num_vals ( ) ,
68
72
DynamicColumn :: Bytes ( c) => c. ords ( ) . values . num_vals ( ) ,
@@ -76,6 +80,7 @@ impl DynamicColumn {
76
80
DynamicColumn :: I64 ( _) => ColumnType :: I64 ,
77
81
DynamicColumn :: U64 ( _) => ColumnType :: U64 ,
78
82
DynamicColumn :: F64 ( _) => ColumnType :: F64 ,
83
+ DynamicColumn :: U128 ( _) => ColumnType :: U128 ,
79
84
DynamicColumn :: IpAddr ( _) => ColumnType :: IpAddr ,
80
85
DynamicColumn :: DateTime ( _) => ColumnType :: DateTime ,
81
86
DynamicColumn :: Bytes ( _) => ColumnType :: Bytes ,
@@ -227,6 +232,7 @@ static_dynamic_conversions!(Column<DateTime>, DateTime);
227
232
static_dynamic_conversions ! ( StrColumn , Str ) ;
228
233
static_dynamic_conversions ! ( BytesColumn , Bytes ) ;
229
234
static_dynamic_conversions ! ( Column <Ipv6Addr >, IpAddr ) ;
235
+ static_dynamic_conversions ! ( Column <u128 >, U128 ) ;
230
236
231
237
#[ derive( Clone , Debug ) ]
232
238
pub struct DynamicColumnHandle {
@@ -272,6 +278,13 @@ impl DynamicColumnHandle {
272
278
) ?;
273
279
Ok ( Some ( column) )
274
280
}
281
+ ColumnType :: U128 => {
282
+ let column = crate :: column:: open_column_u128_as_compact_u64 (
283
+ column_bytes,
284
+ self . format_version ,
285
+ ) ?;
286
+ Ok ( Some ( column) )
287
+ }
275
288
ColumnType :: Bool
276
289
| ColumnType :: I64
277
290
| ColumnType :: U64
@@ -301,6 +314,9 @@ impl DynamicColumnHandle {
301
314
ColumnType :: F64 => {
302
315
crate :: column:: open_column_u64 :: < f64 > ( column_bytes, self . format_version ) ?. into ( )
303
316
}
317
+ ColumnType :: U128 => {
318
+ crate :: column:: open_column_u128 :: < u128 > ( column_bytes, self . format_version ) ?. into ( )
319
+ }
304
320
ColumnType :: Bool => {
305
321
crate :: column:: open_column_u64 :: < bool > ( column_bytes, self . format_version ) ?. into ( )
306
322
}
0 commit comments