sqlx_scylladb_core/
lib.rs1#![warn(missing_docs)]
2#![doc = include_str!("lib.md")]
3
4#[cfg(feature = "any")]
5pub mod any;
6mod arguments;
7mod column;
8mod connection;
9mod database;
10mod error;
11#[cfg(feature = "migrate")]
12mod migrate;
13mod options;
14mod query_result;
15mod row;
16mod statement;
17mod testing;
18mod transaction;
19mod type_info;
20mod types;
21mod value;
22
23pub use arguments::{ScyllaDBArgument, ScyllaDBArgumentBuffer, ScyllaDBArguments};
24pub use column::ScyllaDBColumn;
25pub use connection::ScyllaDBConnection;
26pub use database::ScyllaDB;
27pub use error::ScyllaDBError;
28pub use options::{ScyllaDBCompressor, ScyllaDBConnectOptions, ScyllaDBReplicationStrategy};
29pub use query_result::ScyllaDBQueryResult;
30pub use row::ScyllaDBRow;
31use sqlx::{Executor, Pool, Transaction, pool::PoolOptions};
32use sqlx_core::{
33 impl_acquire, impl_column_index_for_row, impl_column_index_for_statement,
34 impl_encode_for_option, impl_into_arguments_for_arguments,
35};
36pub use statement::ScyllaDBStatement;
37pub use transaction::ScyllaDBTransactionManager;
38pub use type_info::{ScyllaDBTypeInfo, register_any_type};
39pub use types::array::ScyllaDBHasArrayType;
40pub use value::{ScyllaDBValue, ScyllaDBValueRef};
41
42pub type ScyllaDBPool = Pool<ScyllaDB>;
44
45pub type ScyllaDBPoolOptions = PoolOptions<ScyllaDB>;
47
48pub trait ScyllaDBExecutor<'c>: Executor<'c, Database = ScyllaDB> {}
50impl<'c, T: Executor<'c, Database = ScyllaDB>> ScyllaDBExecutor<'c> for T {}
51
52pub type ScyllaDBTransaction<'c> = Transaction<'c, ScyllaDB>;
54
55pub trait ScyllaDBType: sqlx::Type<ScyllaDB> {}
57
58impl_into_arguments_for_arguments!(ScyllaDBArguments);
59impl_acquire!(ScyllaDB, ScyllaDBConnection);
60impl_column_index_for_row!(ScyllaDBRow);
61impl_column_index_for_statement!(ScyllaDBStatement);
62impl_encode_for_option!(ScyllaDB);