check / check (push) Canceled after 0s
A consumer of the checker crate needs no path into this repository. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp
20 lines
9.1 KiB
HTML
20 lines
9.1 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="bookspec’s checker: the example schema, the rule identifiers, and the `Engine` trait an accounting engine implements (`plan/served.md` P13, D-34)."><title>bookspec_checker - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-0c87338a.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="bookspec_checker" data-themes="" data-resource-suffix="" data-rustdoc-version="1.99.1 (58cf8f9c3 2026-10-13)" data-channel="1.99.1" data-search-js="search-cf4fc35e.js" data-stringdex-js="stringdex-b5109af9.js" data-settings-js="settings-170eb4bf.js" ><script src="../static.files/storage-41dd4d93.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-417ebf0a.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-9f56287d.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc mod crate"><a class="skip-main-content" href="#main-content">Skip to main content</a><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Crate bookspec_checker</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../bookspec_checker/index.html">bookspec_<wbr>checker</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><ul class="block"><li><a id="all-types" href="all.html">All Items</a></li></ul><section id="rustdoc-toc"><h3><a href="#reexports">Crate Items</a></h3><ul class="block"><li><a href="#reexports" title="Re-exports">Re-exports</a></li><li><a href="#modules" title="Modules">Modules</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content" tabindex="-1"><div class="main-heading"><h1>Crate <span>bookspec_<wbr>checker</span> <button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/bookspec_checker/lib.rs.html#1-27">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>bookspec’s checker: the example schema, the rule identifiers, and the
|
||
<a href="engine/trait.Engine.html" title="trait bookspec_checker::engine::Engine"><code>Engine</code></a> trait an accounting engine implements (<code>plan/served.md</code> P13,
|
||
D-34).</p>
|
||
<p>bookspec is a specification first: every rule is stated normatively,
|
||
sourced, and demonstrated by concrete examples (<code>bookspec/examples/</code>).
|
||
This crate is the machine-readable part: <a href="schema/struct.Example.html" title="struct bookspec_checker::schema::Example"><code>Example</code></a> is the schema and
|
||
its parser, <a href="rules/index.html" title="mod bookspec_checker::rules"><code>rules</code></a> the catalogue (<code>BS-<area>-<n></code>), and <a href="engine/trait.Engine.html" title="trait bookspec_checker::engine::Engine"><code>Engine</code></a>
|
||
the only interface a conformance runner needs. The runner lives in
|
||
<code>bookspec-runner</code>; wanderbooks’ adapter is
|
||
<code>crates/ledger-core/tests/bookspec.rs</code>.</p>
|
||
<p>The crate knows nothing of any engine: no money type, no ledger, no
|
||
store. That is what lets a second engine (the GnuCash oracle, later) be
|
||
checked by the same examples.</p>
|
||
</div></details><h2 id="reexports" class="section-header">Re-exports<a href="#reexports" class="anchor">§</a></h2><dl class="item-table reexports"><dt id="reexport.Derivation"><code>pub use derive::<a class="struct" href="derive/struct.Derivation.html" title="struct bookspec_checker::derive::Derivation">Derivation</a>;</code></dt><dt id="reexport.Derived"><code>pub use derive::<a class="enum" href="derive/enum.Derived.html" title="enum bookspec_checker::derive::Derived">Derived</a>;</code></dt><dt id="reexport.derive"><code>pub use derive::<a class="fn" href="derive/fn.derive.html" title="fn bookspec_checker::derive::derive">derive</a>;</code></dt><dt id="reexport.Claims"><code>pub use engine::<a class="struct" href="engine/struct.Claims.html" title="struct bookspec_checker::engine::Claims">Claims</a>;</code></dt><dt id="reexport.Engine"><code>pub use engine::<a class="trait" href="engine/trait.Engine.html" title="trait bookspec_checker::engine::Engine">Engine</a>;</code></dt><dt id="reexport.Refusal"><code>pub use engine::<a class="struct" href="engine/struct.Refusal.html" title="struct bookspec_checker::engine::Refusal">Refusal</a>;</code></dt><dt id="reexport.RuleId"><code>pub use engine::<a class="struct" href="engine/struct.RuleId.html" title="struct bookspec_checker::engine::RuleId">RuleId</a>;</code></dt><dt id="reexport.RuleIdError"><code>pub use engine::<a class="struct" href="engine/struct.RuleIdError.html" title="struct bookspec_checker::engine::RuleIdError">RuleIdError</a>;</code></dt><dt id="reexport.fallback_refusal"><code>pub use engine::<a class="fn" href="engine/fn.fallback_refusal.html" title="fn bookspec_checker::engine::fallback_refusal">fallback_refusal</a>;</code></dt><dt id="reexport.examples"><code>pub use files::<a class="fn" href="files/fn.examples.html" title="fn bookspec_checker::files::examples">examples</a>;</code></dt><dt id="reexport.spec_files"><code>pub use files::<a class="fn" href="files/fn.spec_files.html" title="fn bookspec_checker::files::spec_files">spec_files</a>;</code></dt><dt id="reexport.Area"><code>pub use rules::<a class="enum" href="rules/enum.Area.html" title="enum bookspec_checker::rules::Area">Area</a>;</code></dt><dt id="reexport.Rule"><code>pub use rules::<a class="struct" href="rules/struct.Rule.html" title="struct bookspec_checker::rules::Rule">Rule</a>;</code></dt><dt id="reexport.Status"><code>pub use rules::<a class="enum" href="rules/enum.Status.html" title="enum bookspec_checker::rules::Status">Status</a>;</code></dt><dt id="reexport.covered_rules"><code>pub use rules::<a class="fn" href="rules/fn.covered_rules.html" title="fn bookspec_checker::rules::covered_rules">covered_rules</a>;</code></dt><dt id="reexport.rule"><code>pub use rules::<a class="fn" href="rules/fn.rule.html" title="fn bookspec_checker::rules::rule">rule</a>;</code></dt><dt id="reexport.rule_for_id"><code>pub use rules::<a class="fn" href="rules/fn.rule_for_id.html" title="fn bookspec_checker::rules::rule_for_id">rule_for_id</a>;</code></dt><dt id="reexport.rule_for_refusal"><code>pub use rules::<a class="fn" href="rules/fn.rule_for_refusal.html" title="fn bookspec_checker::rules::rule_for_refusal">rule_for_refusal</a>;</code></dt><dt id="reexport.rules"><code>pub use rules::<a class="fn" href="rules/fn.rules.html" title="fn bookspec_checker::rules::rules">rules</a>;</code></dt><dt><code>pub use <a class="mod" href="schema/index.html" title="mod bookspec_checker::schema">schema</a>::*;</code></dt></dl><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="derive/index.html" title="mod bookspec_checker::derive">derive</a></dt><dd>The specification’s own checker (<code>plan/served.md</code> P13 step 5):
|
||
every example’s expected figures derived from its rule’s symbolic
|
||
form, by an engine-free reference model with exact decimals.</dd><dt><a class="mod" href="engine/index.html" title="mod bookspec_checker::engine">engine</a></dt><dd>The interface an accounting engine implements to be checked against
|
||
bookspec (<code>plan/served.md</code> P13, D-34).</dd><dt><a class="mod" href="files/index.html" title="mod bookspec_checker::files">files</a></dt><dd>The specification’s own files, carried by the crate: a consumer that
|
||
depends on this crate (a git checkout carries the whole repository)
|
||
needs no path to <code>examples/</code> or <code>spec/</code>.</dd><dt><a class="mod" href="rules/index.html" title="mod bookspec_checker::rules">rules</a></dt><dd>bookspec’s rule identifiers and their catalogue.</dd><dt><a class="mod" href="schema/index.html" title="mod bookspec_checker::schema">schema</a></dt><dd>The shape of a bookspec example: the TOML schema, the parser, and the
|
||
rules a well-formed example follows whatever engine runs it.</dd></dl></section></div></main></body></html> |