code wiki / _hdl_build / nx_estr_gate.nx

nx_estr_gate.nx source

↩ module page · 33 lines · 1666 B

1// nx_estr_gate.nx -- proves the shared emit/convert base round-trips. DOGFOODS the gate base (imports 2// nx_gate_verdict) so a base-class organ proves itself via the OTHER base class. license_tier: ORIGINAL 3import "nx_estr.nx" 4import "nx_gate_verdict.nx" 5const K_MAGIC_12345: i64 = 12345 6 7func main() -> i64 { 8 let ctr: *i64 = gv_ctr() 9 gv_head("nx_estr -- shared emit/convert base (the primitive ~1900 organs reimplement)" as *u8) 10 let b: *u8 = sys_mmap(64) 11 // T1 catn->atoi round-trip 12 var o: i64 = es_catn(b, 0, K_MAGIC_12345); b[o] = 0 as u8 13 var t1: i64 = 0 14 if es_atoi(b) == K_MAGIC_12345 { t1 = 1 } 15 gv_check("T1 es_catn writes decimal + es_atoi parses it (round-trip 12345)" as *u8, t1, ctr) 16 // T2 negative 17 o = es_catn(b, 0, 0 - 7); b[o] = 0 as u8 18 var t2: i64 = 0 19 if b[0] == (45 as u8) { if b[1] == (55 as u8) { if es_len(b) == 2 { t2 = 1 } } } 20 gv_check("T2 es_catn handles negative (-7)" as *u8, t2, ctr) 21 // T3 cat concatenation + len 22 var p: i64 = es_cat(b, 0, "ab" as *u8); p = es_cat(b, p, "cd" as *u8); b[p] = 0 as u8 23 var t3: i64 = 0 24 if es_len(b) == 4 { if b[0] == (97 as u8) { if b[3] == (100 as u8) { t3 = 1 } } } 25 gv_check("T3 es_cat concatenates (ab+cd=abcd), es_len=4" as *u8, t3, ctr) 26 // T4 zero (the off-by-one classic) 27 o = es_catn(b, 0, 0); b[o] = 0 as u8 28 var t4: i64 = 0 29 if es_len(b) == 1 { if b[0] == (48 as u8) { t4 = 1 } } 30 gv_check("T4 es_catn(0) emits a single '0' (not empty)" as *u8, t4, ctr) 31 let rc: i64 = gv_verdict("ESTR-GATE" as *u8, ctr, "shared emit/convert base proven -- the consolidation target for the line-dup GAP" as *u8) 32 return rc 33}