#[unsafe(no_mangle)]pub unsafe extern "C" fn xmlShell(
doc: *mut _xmlDoc,
filename: *mut c_char,
input: xmlShellReadlineFunc,
output: *mut c_void,
)Expand description
void xmlShell(xmlDocPtr doc, char *filename, xmlShellReadlineFunc input, FILE *output) — the XML shell: an interactive loop allowing to load,
validate, view, modify and save a document.
§SAFETY
doc,filename,outputmust be valid pointers (or NULL where the upstream C contract allows), obtained from the matching constructor/owner and not yet freed; the callee may take or keep ownership exactly as the C API specifies.
The caller must not race this call with concurrent mutation of the same objects from other threads (per-object state is not internally synchronized). Violating any of the above is undefined behavior.
Exercised by the C-API differential courts (courts/suites/data-abi/*-family-probe.c) and the CLI differential courts; those pass byte-for-byte against the upstream oracle.