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
// src/domain/rinq/state.rs
// Type state pattern for compile-time query validation
use PhantomData;
/// Initial state - query just created from a collection
;
/// Chainable intermediate state.
///
/// Despite the name, `Filtered` does **not** mean "the data has been filtered".
/// It is the general-purpose intermediate state that most operations produce and
/// accept. Any operation that yields a lazily-chainable result (filtering,
/// scanning, deduplication, zip, etc.) transitions to `Filtered` so that the
/// next operation in the pipeline can be `select`, `order_by`, or another
/// chainable method.
;
/// Sorted state - query has been sorted with order_by()
;
/// Projected state - query has been transformed with select()