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
// SPDX-License-Identifier: Apache-2.0
//! `ArraySegmentExt` — pagedb segment operations for array tile data.
//!
//! The `StorageEngine` trait handles sparse, sorted, key-value state. For
//! array tile data (large binary payloads, sequentially read per segment,
//! encrypted at rest) pagedb segments are the appropriate backing. This
//! trait exposes exactly the operations the array persistence layer needs
//! without leaking pagedb types into caller code.
//!
//! Only compiled on non-WASM targets. WASM stays on the KV blob path.
use crateLiteError;
/// Extension trait: write, open, and delete array tile segments backed by
/// pagedb encrypted segment files.
///
/// Implementors translate between the generic array segment byte stream
/// (produced by `nodedb_array::SegmentWriter`) and the pagedb segment page
/// layout.
///
/// This trait is object-safe so `StorageEngine` implementations can return
/// `Option<&dyn ArraySegmentExt>` via `as_array_segment_ext()`.