Skip to main content

Crate config_disassembler

Crate config_disassembler 

Source
Expand description

config-disassembler

Disassemble configuration files (XML, JSON, JSON5, JSONC, YAML, TOON, TOML) into smaller files and reassemble the original on demand. The XML implementation lives in the in-tree xml module (ported from the upstream xml-disassembler crate); JSON, JSON5, JSONC, YAML, and TOON share a common value model so a file in one format can be split into files of another format and reassembled back into any of those formats. TOML is intentionally isolated and can only be converted to and from TOML, because TOML cannot represent null, forbids array roots, and forces bare keys to precede tables (which would reorder values on round-trip through other formats).

Every disassemble action accepts a directory as input; when given a directory the runner walks it (filtering with the optional --ignore-path, defaulting to ignore_file::DEFAULT_IGNORE_FILENAME) and disassembles every matching file in place.

Re-exports§

pub use error::Error;
pub use error::Result;

Modules§

cli
Top-level command-line dispatcher.
disassemble
Disassemble a JSON, JSON5, YAML, TOON, TOML, or INI document into a directory of smaller files, optionally written in a different format than the input.
error
Error type used throughout the crate.
format
Format detection, capabilities, and serialization for value-model formats.
ignore_file
Shared ignore-file conventions for every subcommand.
meta
Metadata sidecar describing a disassembled directory.
reassemble
Reassemble a directory of split files (produced by disassemble) back into a single configuration file.
xml
XML Disassembler - Disassemble large XML files into smaller files and reassemble the original XML.
xml_cmd
xml subcommand: thin wrapper around the in-tree XML disassembler CLI.

Functions§

run
Entry point used by the binary. args[0] is the program name.