Crate halo

Crate halo 

Source
Expand description

sql_builder:参考 go-sqlbuilder 的 Rust 实现(单 crate 版本)。

Re-exports§

pub use crate::args::Args;
pub use crate::args::CompileError;
pub use crate::builder::build;
pub use crate::builder::build_named;
pub use crate::builder::buildf;
pub use crate::builder::with_flavor;
pub use crate::cond::Cond;
pub use crate::create_table::CreateTableBuilder;
pub use crate::cte::CTEBuilder;
pub use crate::cte::with;
pub use crate::cte::with_recursive;
pub use crate::cte_query::CTEQueryBuilder;
pub use crate::delete::DeleteBuilder;
pub use crate::dialect::Dialect;
pub use crate::expr::Expr;
pub use crate::field_mapper::FieldMapperFunc;
pub use crate::field_mapper::default_field_mapper;
pub use crate::field_mapper::identity_mapper;
pub use crate::field_mapper::set_default_field_mapper;
pub use crate::field_mapper::set_default_field_mapper_scoped;
pub use crate::field_mapper::snake_case_mapper;
pub use crate::flavor::Flavor;
pub use crate::flavor::InterpolateError;
pub use crate::flavor::default_flavor;
pub use crate::flavor::set_default_flavor;
pub use crate::flavor::set_default_flavor_scoped;
pub use crate::insert::InsertBuilder;
pub use crate::modifiers::FlattenIntoArgs;
pub use crate::modifiers::Raw;
pub use crate::modifiers::RcBuilder;
pub use crate::modifiers::SqlNamedArg;
pub use crate::modifiers::escape;
pub use crate::modifiers::escape_all;
pub use crate::modifiers::flatten;
pub use crate::modifiers::list;
pub use crate::modifiers::named;
pub use crate::modifiers::raw;
pub use crate::modifiers::rc_builder;
pub use crate::modifiers::tuple;
pub use crate::modifiers::tuple_names;
pub use crate::scan::ScanCell;
pub use crate::scan::ScanError;
pub use crate::scan::scan_tokens;
pub use crate::select::JoinOption;
pub use crate::select::SelectBuilder;
pub use crate::structs::FieldMeta;
pub use crate::structs::FieldOpt;
pub use crate::structs::SqlStruct;
pub use crate::structs::Struct;
pub use crate::union::UnionBuilder;
pub use crate::update::UpdateBuilder;
pub use crate::value::SqlValue;
pub use crate::valuer::SqlValuer;
pub use crate::valuer::ValuerError;
pub use crate::where_clause::WhereClause;
pub use crate::where_clause::WhereClauseBuilder;
pub use crate::where_clause::WhereClauseRef;
pub use crate::where_clause::copy_where_clause;

Modules§

args
Args:存储参数并把含 $ 语法的 format 编译成最终 SQL(对齐 go-sqlbuilder args.go)。
builder
Build / BuildNamed / Buildf 等自由拼接能力(对齐 go-sqlbuilder builder.go)。
cond
Cond:用于构造 WHERE 条件表达式(对齐 go-sqlbuilder cond.go)。
create_table
CreateTableBuilder:构建 CREATE TABLE(对齐 go-sqlbuilder createtable.go)。
cte
CTEBuilder:构建 WITH / WITH RECURSIVE(对齐 go-sqlbuilder cte.go)。
cte_query
CTEQueryBuilder:构建一个 CTE 表(对齐 go-sqlbuilder ctequery.go)。
delete
DeleteBuilder:构建 DELETE 语句(对齐 go-sqlbuilder delete.go 的核心行为)。
dialect
SQL 占位符方言支持。
expr
SQL 表达式片段。
field_mapper
Field mapper:把 Rust 字段名映射为列名(对齐 go-sqlbuilder fieldmapper.go)。
flavor
SQL Flavor(方言):控制占位符、Quote、Interpolate 等行为。
injection
injection:按 marker 注入额外 SQL 片段(对齐 go-sqlbuilder injection.go)。
insert
InsertBuilder:构建 INSERT 语句(对齐 go-sqlbuilder insert.go 的核心行为)。
interpolate
SQL 插值:将 sql 中的占位符替换为 args 的字面量(对齐 go-sqlbuilder interpolate.go)。
modifiers
参数修饰器与辅助函数(对齐 go-sqlbuilder modifiers.go)。
scan
Scan:为 Struct::addr* 提供可写入的“扫描目标”(对齐 go-sqlbuilder 的 Addr/Scan 体验)。
select
SelectBuilder:构建 SELECT 语句(对齐 go-sqlbuilder select.go 的核心行为)。
string_builder
高效的字符串拼接工具(对齐 go-sqlbuilder 的 stringBuilder 行为)。
structs
Struct:轻量 ORM(参考 go-sqlbuilder 的 Struct/structfields 实现)。
union
UnionBuilder:构建 UNION / UNION ALL(对齐 go-sqlbuilder union.go 的核心行为)。
update
UpdateBuilder:构建 UPDATE 语句(对齐 go-sqlbuilder update.go 的核心行为)。
value
SQL 参数值类型。
valuer
SqlValuer:对齐 go-sqlbuilder 对 database/sql/driver.Valuer 的支持(最小子集)。
where_clause
WhereClause:可复用 WHERE 子句(对齐 go-sqlbuilder whereclause.go)。

Macros§

sql_struct
声明一个可用于 Struct<T> 的业务 struct 元数据与取值逻辑。