Skip to main content

Crate drizzle_core

Crate drizzle_core 

Source
Expand description

Drizzle Core - SQL generation library

§no_std Support

This crate supports no_std environments with an allocator:

# With std (default)
drizzle-core = "0.1"

# no_std with allocator
drizzle-core = { version = "0.1", default-features = false, features = ["alloc"] }

Re-exports§

pub use bind::BindValue;
pub use bind::NullableBindValue;
pub use bind::ValueTypeForDialect;
pub use builder::BuilderInit;
pub use builder::ExecutableState;
pub use builder::GroupByAllowed;
pub use builder::GroupByApplied;
pub use builder::HavingAllowed;
pub use builder::JoinAllowed;
pub use builder::LimitAllowed;
pub use builder::OffsetAllowed;
pub use builder::OrderByAllowed;
pub use builder::WhereAllowed;
pub use dialect::DialectTypes;
pub use dialect::PostgresDialect;
pub use dialect::SQLiteDialect;
pub use join::Join;
pub use join::JoinType;
pub use pagination::PaginationArg;
pub use param::OwnedParam;
pub use param::Param;
pub use param::ParamBind;
pub use param::ParamSet;
pub use relation::Joinable;
pub use relation::Relation;
pub use relation::SchemaHasTable;
pub use row::AfterFullJoin;
pub use row::AfterJoin;
pub use row::AfterLeftJoin;
pub use row::AfterRightJoin;
pub use row::DecodeSelectedRef;
pub use row::ExprValueType;
pub use row::FromDrizzleRow;
pub use row::GroupByIdentity;
pub use row::HasSelectModel;
pub use row::IntoGroupBy;
pub use row::IntoSelectTarget;
pub use row::MarkerAggValidFor;
pub use row::MarkerColumnCountValid;
pub use row::MarkerScopeValidFor;
pub use row::NullProbeRow;
pub use row::ResolveRow;
pub use row::RowColumnList;
pub use row::SQLTypeToRust;
pub use row::ScopePush;
pub use row::Scoped;
pub use row::SelectAs;
pub use row::SelectAsFrom;
pub use row::SelectCols;
pub use row::SelectExpr;
pub use row::SelectRequiredTables;
pub use row::SelectStar;
pub use row::WrapNullable;
pub use schema::OrderBy;
pub use schema::asc;
pub use schema::desc;
pub use sql::ColumnDialect;
pub use sql::ColumnFlags;
pub use sql::ColumnRef;
pub use sql::ColumnSqlRef;
pub use sql::ConstraintRef;
pub use sql::ForeignKeyRef;
pub use sql::OwnedSQL;
pub use sql::OwnedSQLChunk;
pub use sql::PrimaryKeyRef;
pub use sql::SQL;
pub use sql::SQLChunk;
pub use sql::TableDialect;
pub use sql::TableRef;
pub use sql::TableSqlRef;
pub use sql::Token;
pub use placeholder::*;
pub use traits::*;

Modules§

bind
builder
conv
Runtime value-conversion helpers shared across dialects.
cte
Shared macro for dialect CTE view types.
dialect
Dialect type re-exported from drizzle-types with core-specific extensions.
error
Error types for drizzle-core
expr
Type-safe SQL expression system.
helpers
join
Join types and helper macros for SQL JOIN operations
pagination
param
placeholder
prepared
relation
Compile-time relation marker traits.
row
Type-safe row inference for query builders.
schema
sql
tracing
Tracing utilities for drizzle query and transaction observability.
traits
Core traits for SQL generation.
types
Re-exports SQL type markers and type-level compatibility traits.

Macros§

drizzle_trace_query
Emit a debug-level tracing event with the SQL text and parameter count.
drizzle_trace_tx
Emit an info-level tracing event for transaction lifecycle (begin, commit, rollback).
impl_cte_types
Generate dialect-specific CTEDefinition and CTEView types.
impl_join_arg_trait
Macro to generate dialect-specific JoinArg trait and impls.
impl_join_helpers
Macro to generate join helper functions for a specific dialect.
impl_try_from_int
Generates TryFrom implementations for multiple integer types that delegate to i64.
tag
Define a Tag in one line.

Enums§

Dialect
Re-export the unified Dialect enum from drizzle-types SQL dialect for database-specific behavior