1#![doc = include_str!("../README.md")]
2#![no_std]
3#![deny(clippy::mod_module_files)]
4#![allow(private_bounds, private_interfaces)]
5
6extern crate alloc;
7
8pub mod builders;
9#[cfg(any(test, feature = "testing"))]
10pub mod differential_testing;
11pub(crate) mod encoding;
12pub mod errors;
13#[cfg(feature = "maxwell")]
14pub mod maxwell;
15pub mod parser;
16#[cfg(feature = "pg-walstream")]
17pub mod pg_walstream;
18#[cfg(feature = "pg-walstream")]
19pub mod pg_walstream_reverse;
20pub mod schema;
21#[cfg(any(test, feature = "testing"))]
22pub mod testing;
23#[cfg(feature = "wal2json")]
24pub mod wal2json;
25pub mod wire;
26
27#[cfg(feature = "diesel")]
29pub use builders::{Adapter, ApplyOps, Binder, BoundPatchsetOp, DefaultBinder};
30pub use builders::{
31 ChangeDelete, ChangeSet, ChangesetFormat, ChangesetOp, ChangesetUpdatePair, ColumnNames,
32 DiffOps, DiffSet, DiffSetBuilder, Indirect, Insert, PatchDelete, PatchSet, PatchsetFormat,
33 PatchsetOp, PatchsetUpdateEntry, Reverse, Update,
34};
35pub use encoding::Value;
36pub use parser::{FormatMarker, ParseError, ParsedDiffSet, TableSchema};
37pub use schema::{DynTable, IndexableValues, NamedColumns, SchemaWithPK, SimpleTable};
38pub use wire::{
39 BoolDecoder, DateVerbatimDecoder, DecimalTextDecoder, DecodeError, Decoder, Digestable,
40 Int64OverflowToTextDecoder, IntDecoder, IntervalVerbatimDecoder, JsonCanonicalDecoder,
41 JsonVerbatimDecoder, MySqlBinaryDecoder, NullDecoder, PgByteaBinaryDecoder,
42 PgByteaTextModeDecoder, RealDecoder, TextDecoder, TimeVerbatimDecoder,
43 TimestampTzVerbatimDecoder, TimestampVerbatimDecoder, TypeMap, TypeMapDefaults,
44 UuidBlob16Decoder, UuidText36Decoder, WireAdapter, WireColumnTypes, WireSchema, WireSource,
45};
46
47pub type ChangeUpdate<T, S, B> = Update<T, ChangesetFormat, S, B>;
52
53pub type PatchUpdate<T, S, B> = Update<T, PatchsetFormat, S, B>;
57
58pub use errors::Error;