1use cdbc::executor::Executor;
4
5mod arguments;
6mod column;
7mod connection;
8mod copy;
9mod database;
10mod error;
11mod io;
12mod listener;
13mod message;
14mod options;
15mod query_result;
16mod row;
17mod statement;
18mod transaction;
19mod type_info;
20pub mod types;
21mod value;
22
23#[macro_use]
24pub extern crate cdbc;
25
26#[cfg(feature = "bigdecimal")]
27extern crate bigdecimal_ as bigdecimal;
28
29pub use arguments::{PgArgumentBuffer, PgArguments};
30pub use column::PgColumn;
31pub use connection::{PgConnection, PgConnectionInfo};
32pub use copy::PgCopyIn;
33pub use database::Postgres;
34pub use error::{PgDatabaseError, PgErrorPosition};
35pub use listener::{PgListener, PgNotification};
36pub use message::PgSeverity;
37pub use options::{PgConnectOptions, PgSslMode};
38pub use query_result::PgQueryResult;
39pub use row::PgRow;
40pub use statement::PgStatement;
41pub use transaction::PgTransactionManager;
42pub use type_info::{PgTypeInfo, PgTypeKind};
43pub use types::PgHasArrayType;
44pub use value::{PgValue, PgValueFormat, PgValueRef};
45
46pub type PgPool = cdbc::pool::Pool<Postgres>;
48
49pub type PgPoolOptions = cdbc::pool::PoolOptions<Postgres>;
51
52pub trait PgExecutor<'c>: Executor<Database = Postgres> {}
54impl<'c, T: Executor<Database = Postgres>> PgExecutor<'c> for T {}
55
56impl_into_arguments_for_arguments!(PgArguments);
57impl_column_index_for_row!(PgRow);
58impl_column_index_for_statement!(PgStatement);
59impl_into_maybe_pool!(Postgres, PgConnection);