orthonym.assembly.handlers.simple_molecule#
Note
Internal API. Names and behaviour may change between releases.
a phase simple_molecule handler — LIFT (single-atom / very simple).
Verbatim move of composer.py:1388-1392 dispatch logic. The underlying
_name_simple_molecule body STAYS in composer.py during Plan-02 and
moves to this module in Plan-03 commit 03-10 (composer.py thinning) per
internal notes incremental migration.
IUPAC cite: (simple molecules; noble gases / single-atom symbols).
Byte-identical contract: the predicate matches molecules with neither a principal chain nor a ring system (atoms / noble gases / very simple molecules); no other handler in the cascade applies in that case, so moving this to inner-dispatch (which fires before the inline cascade) does NOT change behavior — the molecule routes identically.
References: - composer.py:1388-1392 (inline simple-molecule branch). - composer.py:_name_simple_molecule body at ~ line 2545 (STAYS until 03-10). - internal notes-DECOMP.md row ‘simple_molecule’ + purity proof.
- orthonym.assembly.handlers.simple_molecule.name_simple_molecule(features, mol=None, style='pin')#
Direct-return simple-molecule handler.
Plan-10 DECOMP-02 OBSERVABLE CLOSURE: this is the FIRST tree-emitting handler in Orthonym. The NameTreeNode contains only
parent_stem(the noble-gas / atom name) because simple molecules have no locants, no prefixes, no suffix, no stereo.name_tree_to_string(tree)is byte-identical toresult.name.