nx_chem_stereo_test.nx
buildroot/runtime/nx_chem_stereo_test.nx
about
nx_chem_stereo_test.nx -- C2.3d KAT: stereo emit (@/@@ for atoms + /\
for bonds).
Verifies the canonical emit preserves stereo markers stored during
parse. C2.3d MVP: emits stored stereo verbatim (no parity correction
for canonical-order rearrangement -- that's C2.3e with CIP rules).
Round-trip property: parse -> emit canonical -> parse same molecule
gives back the same stereo on atoms and bonds for molecules where
canonical DFS direction matches input direction.
expect_exit: 0
license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_chem_molecule.nxnx_chem_smiles.nxnx_chem_smiles_emit.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 20 | func parse_canonical(src: *u8, n: nx_int, out: *u8, cap: nx_int, len: *nx_int) -> nx_int called by 2: a_atom_stereo_ccwf_no_stereo_no_markers calls 2: nx_chem_parse_smilesnx_chem_emit_canonical_smiles |
| 27 | func buf_contains(buf: *u8, n: nx_int, byte_val: nx_int) -> nx_int |
| 40 | func a_atom_stereo_ccw() -> nx_int |
| 58 | func b_atom_stereo_roundtrip() -> nx_int |
| 88 | func c_atom_stereo_cw() -> nx_int |
| 115 | func d_bond_stereo_up() -> nx_int called by 1: main calls 4: nx_chem_parse_smilesnx_chem_mol_bondnx_chem_emit_canonical_smilesbuf_contains |
| 137 | func e_bond_stereo_down() -> nx_int called by 1: main calls 4: nx_chem_parse_smilesnx_chem_mol_bondnx_chem_emit_canonical_smilesbuf_contains |
| 158 | func f_no_stereo_no_markers() -> nx_int |
| 175 | func g_bond_stereo_roundtrip() -> nx_int |
| 208 | func h_bond_stereo_reverse_dfs() -> nx_int |
| 255 | func i_bond_stereo_cis() -> nx_int |
| 305 | func j_atom_stereo_parity_h_count() -> nx_int called by 1: main calls 4: nx_chem_parse_smilesnx_chem_mol_atomnx_chem_emit_canonical_smilesbuf_contains |
| 354 | func k_atom_stereo_h0() -> nx_int |
| 395 | func main() -> nx_exit |