1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
//! Module: lib
//! Responsibility: crate root for the IcyDB core runtime surface.
//! Does not own: canister-facing facade APIs from the public `icydb` crate.
//! Boundary: exposes the engine subsystems used by schema, query, executor, and storage layers.
//! Core runtime for IcyDB: accepted-schema execution, values, storage, and
//! the low-level vocabulary exported through the facade.
// The no-default test target intentionally type-checks shared test/helper
// surfaces whose consuming tests live behind SQL, SQL-explain, or diagnostics
// features. Keep production and all-features dead-code linting strict.
// The query-only build owns the complete engine-neutral planner/executor
// substrate. SQL is an optional frontend over that substrate and is currently
// the only consumer of some grouped, aggregate, cursor, and diagnostic
// capabilities, so those internal extension points are intentionally dormant
// when `query` is enabled without `sql`.
extern crate self as icydb;
pub
// public exports are one module level down
pub
pub
///
/// CONSTANTS
///
/// Maximum number of indexed fields allowed on an entity.
///
/// This limit keeps hashed index keys within bounded, storable sizes and
/// simplifies sizing tests in the stores.
pub const MAX_INDEX_FIELDS: usize = 4;
///
/// Prelude
///
/// Prelude contains only domain vocabulary.
/// No errors, executors, stores, serializers, or helpers are re-exported here.
///