@@ -46,14 +46,14 @@ fn exclusive_bound(heap: &Heap, ms: i128) -> Value<'_, &Heap> {
4646
4747/// Constructs `Opaque(Interval, {end: .., start: ..})`.
4848///
49- /// Fields are sorted lexicographically (`end` before `start`).
49+ /// Field order in `push` calls does not matter; [`StructBuilder::finish`]
50+ /// sorts fields lexicographically.
5051fn interval_value < ' heap > (
5152 heap : & ' heap Heap ,
5253 symbols : & InternSet < ' heap , [ Symbol < ' heap > ] > ,
5354 start : Value < ' heap , & ' heap Heap > ,
5455 end : Value < ' heap , & ' heap Heap > ,
5556) -> Value < ' heap , & ' heap Heap > {
56- // Fields sorted: "end" < "start"
5757 let mut builder = StructBuilder :: < _ , 2 > :: new ( ) ;
5858 builder. push ( sym:: end, end) ;
5959 builder. push ( sym:: start, start) ;
@@ -222,9 +222,12 @@ fn option<'heap, T>(
222222
223223/// Builds the shared input set from seeded entity data and axis directives.
224224///
225- /// Uses the decoder and the post-lowering type environment to construct
226- /// properly typed `Value`s for entity UUIDs and entity IDs. The input names
227- /// match what J-Expr test files reference via `["input", "<name>", "<type>"]`.
225+ /// Constructs interpreter [`Value`]s directly from the Rust-typed seed data,
226+ /// mirroring the opaque wrapping structure of the HashQL type system
227+ /// (e.g. `EntityId(Struct { web_id: WebId(ActorGroupEntityUuid(Uuid(String))), ... })`).
228+ ///
229+ /// The input names match what J-Expr test files reference via
230+ /// `["input", "<name>", "<type>"]`.
228231pub ( crate ) fn build_inputs < ' heap > (
229232 heap : & ' heap Heap ,
230233 symbols : & InternSet < ' heap , [ Symbol < ' heap > ] > ,
0 commit comments