Skip to main content

Module cli

Module cli 

Source
Expand description

Command-line interface — a thin shell over the tzcompile library.

The CLI parses arguments, builds a CompileConfig, and calls the library. It holds no compiler logic of its own; everything substantive lives in the library so it can be reused and tested directly. Subcommands:

  • compile — compile selected zones to a TZif tree under --out;
  • compare — compile a zone and diff it against reference zic (the oracle);
  • explain — say what a zone would compile to, or why it is unsupported;
  • supported-syntax — print the subset this version implements;
  • support-report — map a whole source file: which identifiers compile, and why the rest don’t.

Structs§

AuxTableValidateArgs
aux-table-validate (T16.4): structural validation of auxiliary .tab files. Each flag points at a table file directly — they are not --input compile sources (the category law).
Cli
Top-level CLI definition.
CompareArgs
CompileArgs
DoctorArgs
doctor (T16.6b): read-only environment probe.
ExplainArgs
ReleaseDiffArgs
release-diff (T16.6a): diff two tzdb releases per identifier.
SemanticReportArgs
semantic-report (T15.3): typed zdump-backed semantic witnesses for a compact zone set.
SizeReportArgs
StructuralReportArgs
SupportReportArgs
TzifValidateArgs
tzif-validate (T15.4): RFC 9636 structural validation of zic-rs + reference TZif output.
VendorOracleAdmitArgs
vendor-oracle-admit (T16.5b): ingest + admit an external receipt JSON file.

Enums§

BloatArg
Reference zic’s -b {slim|fat} bloat value (T10.2). This is the emission policy knob — whether otherwise-redundant transitions are kept (fat) or dropped (slim) — and is a thin alias onto EmitStyleArg. It is not the TZif version (content-driven) and not the -R redundant-tail range. zic’s own default is slim; zic-rs keeps a behaviour-matched fat-style default and only changes emission when asked.
Command
CompareModeArg
--mode value.
EmitStyleArg
--emit-style value (T8-slim).
LinkModeArg
--link-mode value.
ReportFormatArg
--format value for support-report.
UnsupportedArg
--unsupported value.

Functions§

run
Run the CLI. Returns Ok(()) on success; the caller maps Err to a process exit code.
supported_syntax_text
The human-readable supported-syntax summary (also the source of truth for docs/supported-syntax.md’s prose).