Skip to main content

xmlShell

Function xmlShell 

Source
#[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, output must 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.