sqlx_scylladb_core/
column.rs

1use scylla::cluster::metadata::ColumnType;
2use sqlx::Column;
3use sqlx_core::ext::ustr::UStr;
4
5use crate::{ScyllaDB, ScyllaDBTypeInfo};
6
7/// Implementation of [sqlx::Column] for ScyllaDB.
8#[derive(Debug)]
9pub struct ScyllaDBColumn {
10    pub(crate) ordinal: usize,
11    pub(crate) name: UStr,
12    pub(crate) type_info: ScyllaDBTypeInfo,
13    pub(crate) column_type: ColumnType<'static>,
14}
15
16impl Column for ScyllaDBColumn {
17    type Database = ScyllaDB;
18
19    fn ordinal(&self) -> usize {
20        self.ordinal
21    }
22
23    fn name(&self) -> &str {
24        &self.name
25    }
26
27    fn type_info(&self) -> &ScyllaDBTypeInfo {
28        &self.type_info
29    }
30}