code wiki / _hdl_build / nx_compare_growth_json_owner_gate_20260910.nx

nx_compare_growth_json_owner_gate_20260910.nx source

↩ module page · 22 lines · 1299 B

1// Qualifies the existing bounded JSON writer before growth projection depends on it. 2import "json_emit.nx" 3import "nx_gate_verdict.nx" 4func main() -> i64 { 5 let ctr: *i64=gv_ctr(); gv_head("GROWTH-JSON-OWNER" as *u8) 6 let out: *u8=sys_mmap(1024) 7 let w: *JsonWriter=sys_mmap(40) as *JsonWriter 8 gv_check("writer init" as *u8,json_writer_init(w,out,1024)==0,ctr) 9 gv_check("object begin" as *u8,json_begin_object(w)==0,ctr) 10 gv_check("key" as *u8,json_emit_key(w,"text" as *u8,4)==0,ctr) 11 let sample: *u8="quote\" slash\\ tab\t Ω" as *u8 12 gv_check("external string" as *u8,json_emit_string(w,sample,21)==0,ctr) 13 gv_check("nullable key" as *u8,json_emit_key(w,"evidence_validated_stage" as *u8,24)==0,ctr) 14 gv_check("unknown null" as *u8,json_emit_null(w)==0,ctr) 15 gv_check("object close" as *u8,json_end_object(w)==0,ctr) 16 gv_puts("JSON=" as *u8); sys_write(1,out,w.pos); gv_puts("\n" as *u8) 17 let prior: *u8=w.prior; sys_munmap(prior,JE_MAX_DEPTH+16) 18 json_writer_init(w,out,1) 19 gv_check("capacity one first byte" as *u8,json_begin_object(w)==0,ctr) 20 gv_check("overflow explicit" as *u8,json_emit_key(w,"x" as *u8,1)<0,ctr) 21 return gv_verdict("GROWTH-JSON-OWNER" as *u8,ctr,"shared writer only; no capability mastery or delivery claim" as *u8) 22}