This commit is contained in:
2026-09-09 17:35:23 +08:00
parent 2a98ae7556
commit 161af68fe3
1271 changed files with 58251 additions and 98639 deletions
@@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class ProgramXyzBackfillSyntax | HiAPI-C# 2025 ">
<meta name="description" content="Debug / observability back-fill: writes onto blocks that did not have it written by upstream logic syntaxes (e.g. block, chain-change blocks that only updated MC via a rotary-only path), only when the effective program position has changed from the last block that stored a . Skips the block entirely when either of these holds: The block already has written — e.g. by , , , , , or .The effective value equals the last stored value (modal-only block such as pure F / S / M / plane-select — no program motion). Only back-fills the root block; items are intentionally skipped (they are managed by and per-cycle syntaxes that already write the right per-item ProgramXyz). Placement: end of , after . Runs purely as a bookkeeping pass — no other syntax / semantic in the default pipeline reads the additional back-fill values it emits, so the runtime output ( stream) is unchanged whether this syntax is present or not. The only observable effect is additional ProgramXyz entries in the cached syntax-pieces dump, which makes block-to-block debugging and diffing easier.">
<meta name="description" content="Debug / observability back-fill: writes onto blocks that did not have it written by upstream logic syntaxes (e.g. block, chain-change blocks that only updated MC via a rotary-only path), only when the effective program position has changed from the previous block&#39;s effective value (which, blocks being skipped only on equality, is also the last stored ). Skips the block entirely when either of these holds: The block already has written — e.g. by , , , , , or .The effective value equals the predecessor&#39;s effective value (modal-only block such as pure F / S / M / plane-select — no program motion). Only back-fills the root block; items are intentionally skipped (they are managed by and per-cycle syntaxes that already write the right per-item ProgramXyz). Placement: end of , after . Runs purely as a bookkeeping pass — no other syntax / semantic in the default pipeline reads the additional back-fill values it emits, so the runtime output ( stream) is unchanged whether this syntax is present or not. The only observable effect is additional ProgramXyz entries in the cached syntax-pieces dump, which makes block-to-block debugging and diffing easier.">
<link rel="icon" href="../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
@@ -102,7 +102,8 @@ Class ProgramXyzBackfillSyntax
written by upstream logic syntaxes (e.g. <a class="xref" href="Hi.NcParsers.Initializers.HomeMcInitializer.html">HomeMcInitializer</a>
block, chain-change blocks that only updated MC via a rotary-only path),
<b>only when</b> the effective program position has changed from the
last block that stored a <a class="xref" href="Hi.NcParsers.Keywords.IProgramXyzDef.html#Hi_NcParsers_Keywords_IProgramXyzDef_ProgramXyz">ProgramXyz</a>.</p>
previous block's effective value (which, blocks being skipped only on
equality, is also the last stored <a class="xref" href="Hi.NcParsers.Keywords.IProgramXyzDef.html#Hi_NcParsers_Keywords_IProgramXyzDef_ProgramXyz">ProgramXyz</a>).</p>
<p>
Skips the block entirely when either of these holds:
<ul><li>The block already has <a class="xref" href="Hi.NcParsers.Keywords.IProgramXyzDef.html#Hi_NcParsers_Keywords_IProgramXyzDef_ProgramXyz">ProgramXyz</a>
@@ -111,8 +112,9 @@ Skips the block entirely when either of these holds:
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.MachineCoordSelectSyntax.html">MachineCoordSelectSyntax</a>,
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.ReferenceReturnSyntax.html">ReferenceReturnSyntax</a>,
<a class="xref" href="Hi.NcParsers.LogicSyntaxs.McAbcXyzFallbackSyntax.html">McAbcXyzFallbackSyntax</a>, or
<a class="xref" href="Hi.NcParsers.PostLogicSyntaxs.RadiusCompensationSyntax.html">RadiusCompensationSyntax</a>.</li><li>The effective value equals the last stored value (modal-only
block such as pure F / S / M / plane-select — no program motion).</li></ul>
<a class="xref" href="Hi.NcParsers.PostLogicSyntaxs.RadiusCompensationSyntax.html">RadiusCompensationSyntax</a>.</li><li>The effective value equals the predecessor's effective value
(modal-only block such as pure F / S / M / plane-select — no
program motion).</li></ul>
<p>
Only back-fills the root block; <a class="xref" href="Hi.NcParsers.Keywords.CompoundMotion.html#Hi_NcParsers_Keywords_CompoundMotion_ItemsKey">ItemsKey</a>