triblespace_core/
lib.rs

1// Prefer explicit `?` variable bindings in patterns instead of relying on
2// parenthesisation. Do not suppress `unused_parens` at the crate level.
3#![cfg_attr(nightly, feature(rustc_attrs, decl_macro, file_lock))]
4
5extern crate self as triblespace_core;
6
7#[allow(unused_extern_crates)]
8extern crate proc_macro;
9
10#[cfg(not(all(target_pointer_width = "64", target_endian = "little")))]
11compile_error!("tribles-rust requires a 64-bit little-endian target");
12
13pub mod attribute;
14pub mod blob;
15pub mod id;
16pub mod import;
17pub mod metadata;
18pub mod patch;
19pub mod prelude;
20pub mod query;
21pub mod repo;
22pub mod trible;
23pub mod value;
24
25pub mod debug;
26pub mod examples;
27
28// Re-export dependencies used by generated macros so consumers
29// don't need to add them explicitly.
30pub use arrayvec;
31
32pub mod macros {
33    pub use triblespace_core_macros::*;
34    pub use crate::id::id_hex;
35    pub use crate::query::find;
36}
37
38// Proof harnesses and integration-style documentation tests live in the
39// top-level `triblespace` crate so downstream users can depend on
40// `triblespace-core` without pulling in additional development-only
41// dependencies.