1pub mod sqlx {
17 pub use sqlx_core::Either;
18 pub use sqlx_core::acquire::Acquire;
19 pub use sqlx_core::arguments::{Arguments, IntoArguments};
20 pub use sqlx_core::column::{Column, ColumnIndex};
21 pub use sqlx_core::connection::{ConnectOptions, Connection};
22 pub use sqlx_core::database::{self, Database};
23 pub use sqlx_core::describe::Describe;
24 pub use sqlx_core::executor::{Execute, Executor};
25 pub use sqlx_core::from_row::FromRow;
26 pub use sqlx_core::pool::{self, Pool};
27 pub use sqlx_core::query::{query, query_with};
28 pub use sqlx_core::query_as::{query_as, query_as_with};
29 pub use sqlx_core::query_builder::{self, QueryBuilder};
30 pub use sqlx_core::query_scalar::{query_scalar, query_scalar_with};
31 pub use sqlx_core::raw_sql::{RawSql, raw_sql};
32 pub use sqlx_core::row::Row;
33 pub use sqlx_core::statement::Statement;
34 pub use sqlx_core::transaction::{Transaction, TransactionManager};
35 pub use sqlx_core::type_info::TypeInfo;
36 pub use sqlx_core::value::{Value, ValueRef};
37
38 pub use sqlx_core::error::{self, Error, Result};
39
40 #[cfg(feature = "decimal-rust-decimal")]
41 pub use sqlx_core::migrate;
42 #[cfg(not(feature = "decimal-rust-decimal"))]
43 pub use sqlx_core::migrate;
44
45 pub use sqlx_postgres::{
46 self as postgres, PgConnection, PgExecutor, PgPool, PgTransaction, Postgres,
47 };
48
49 pub mod types {
50 pub use sqlx_core::types::*;
51 }
52
53 pub mod encode {
54 pub use sqlx_core::encode::{Encode, IsNull};
55 }
56 pub use self::encode::Encode;
57
58 pub mod decode {
59 pub use sqlx_core::decode::Decode;
60 }
61 pub use self::decode::Decode;
62
63 pub use sqlx_core::types::Type;
64}
65
66mod audit;
67mod delegate;
68mod descriptor;
69mod error;
70mod idempotency;
71mod isolation;
72mod json;
73mod migrations;
74mod partial_row;
75mod query;
76mod render;
77#[cfg(test)]
78mod tests_coalesce;
79#[cfg(test)]
80mod tests_create_defaults;
81#[cfg(test)]
82mod tests_descriptor;
83#[cfg(test)]
84mod tests_field_filter;
85#[cfg(test)]
86mod tests_filter_logic;
87#[cfg(test)]
88mod tests_geography;
89#[cfg(test)]
90mod tests_json;
91#[cfg(test)]
92mod tests_nested_relation_policy;
93#[cfg(test)]
94mod tests_optional;
95#[cfg(test)]
96mod tests_pgvector;
97#[cfg(test)]
98mod tests_policy_precedence_bug;
99#[cfg(test)]
100mod tests_read_policy_field_predicates;
101#[cfg(test)]
102mod tests_read_policy_predicates;
103#[cfg(test)]
104mod tests_relation;
105#[cfg(test)]
106mod tests_system_principal_policy;
107#[cfg(test)]
108mod tests_update;
109#[cfg(test)]
110mod tests_update_many;
111
112pub use partial_row::FromPartialPgRow;
113
114pub use json::Json;
115#[cfg(feature = "pgvector")]
120pub use pgvector;
121
122pub use audit::{AUDIT_TABLE_DDL, primary_key_from_snapshot, snapshot_model};
123pub use error::cool_error_from_sqlx;
124pub use idempotency::{SqlxIdempotencyStore, expiry_from};
125pub use isolation::{run_in_isolated_tx, run_in_isolated_tx_with_retries};
126pub use migrations::{
127 MIGRATIONS_TABLE_DDL, Migration, MigrationState, MigrationStatus, apply_pending,
128 ensure_migrations_table, status,
129};
130
131pub use cratestack_policy::{PolicyExpr, PolicyLiteral, ReadPolicy, ReadPredicate};
132pub use cratestack_sql::{
133 CoalesceExpr, CoalesceFilter, ConflictTarget, CreateDefault, CreateDefaultType,
134 CreateModelInput, FieldRef, Filter, FilterExpr, FilterOp, IntoColumnName, IntoSqlValue,
135 JsonFilter, JsonTextPath, ModelColumn, ModelDescriptor, ModelPrimaryKey, NullOrder,
136 OrderClause, Orderable, Projection, RelationFilter, RelationHop, RelationInclude,
137 RelationQuantifier, SortDirection, SpatialFilter, SpatialPoint, SqlColumnValue, SqlValue,
138 Unorderable, UpdateModelInput, UpsertModelInput, VectorDistanceExpr, VectorDistanceFilter,
139 VectorMetric, coalesce, is_orderable, order_value_sql, point, wrap_filter,
140};
141pub use delegate::{
142 ModelDelegate, ScopedAggregate, ScopedAggregateColumn, ScopedAggregateCount, ScopedBatchCreate,
143 ScopedBatchDelete, ScopedBatchGet, ScopedBatchUpdate, ScopedBatchUpsert, ScopedCreateRecord,
144 ScopedDeleteMany, ScopedDeleteRecord, ScopedFindMany, ScopedFindManyWith, ScopedFindUnique,
145 ScopedModelDelegate, ScopedProjectedFindMany, ScopedProjectedFindUnique, ScopedUpdateMany,
146 ScopedUpdateManySet, ScopedUpdateRecord, ScopedUpdateRecordSet, ScopedUpsertRecord,
147 ScopedUpsertRecordDoNothing, ViewDelegate, ViewDelegateNoUnique,
148};
149pub use descriptor::SqlxRuntime;
150pub use query::{
151 Aggregate, AggregateColumn, AggregateCount, BatchCreate, BatchDelete, BatchGet, BatchUpdate,
152 BatchUpdateItem, BatchUpsert, CreateRecord, DeleteMany, DeleteRecord, FindMany, FindManyWith,
153 FindUnique, ProjectedFindMany, ProjectedFindUnique, UpdateMany, UpdateManySet, UpdateRecord,
154 UpdateRecordSet, UpsertOutcome, UpsertRecord, UpsertRecordDoNothing,
155 create_record_with_executor, update_record_with_executor,
156};