rename XFactory.Regs to XFactory.Generators.

This commit is contained in:
2026-05-23 21:23:06 +08:00
parent 8b285cc863
commit 058003f395
155 changed files with 16416 additions and 1261 deletions
@@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="title" content="Class SubProgramCall | HiAPI-C# 2025 ">
<meta name="description" content="Subprogram call record left on the M98 / M198 host block by after the subprogram file has been inlined into the source layer. The call itself emits no motion act; this section is bookkeeping so cache dumps and diagnostic readers can see &amp;quot;this block triggered an inline of file File&amp;quot;.">
<meta name="description" content="Subprogram call record left by on the M98 / M198 host block and on every inlined body block. The call itself emits no motion act; this section is bookkeeping so cache dumps and diagnostic readers can see &amp;quot;this block triggered (or sits inside) an inline of program P&amp;quot;. M98 and M198 share the exact same section shape. The difference between them is purely environmental — which folder the resolver looks in (SubProgramFolderConfig.InternalFolder vs ExternalFolder) — and that lives on the dependency, not in this JSON record.">
<link rel="icon" href="../img/HiAPI.favicon.ico">
<link rel="stylesheet" href="../public/docfx.min.css">
<link rel="stylesheet" href="../public/main.css">
@@ -97,11 +97,19 @@ Class SubProgramCall
<dl><dt>Assembly</dt><dd>HiMech.dll</dd></dl>
</div>
<div class="markdown summary"><p>Subprogram call record left on the M98 / M198 host block by
<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.SubProgramCallSyntax.html">SubProgramCallSyntax</a> after the subprogram
file has been inlined into the source layer. The call itself emits no
motion act; this section is bookkeeping so cache dumps and diagnostic
readers can see &quot;this block triggered an inline of file <code>File</code>&quot;.</p>
<div class="markdown summary"><p>Subprogram call record left by
<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.SubProgramCallSyntax.html">SubProgramCallSyntax</a> on the M98 /
M198 host block and on every inlined body block. The call itself
emits no motion act; this section is bookkeeping so cache dumps and
diagnostic readers can see &quot;this block triggered (or sits inside)
an inline of program <code>P</code>&quot;.</p>
<p>
<code>M98</code> and <code>M198</code> share the exact same section shape. The
difference between them is purely environmental — which folder the
resolver looks in (<code>SubProgramFolderConfig.InternalFolder</code> vs
<code>ExternalFolder</code>) — and that lives on the dependency, not in
this JSON record.
</p>
</div>
<div class="markdown conceptual"></div>
@@ -182,19 +190,25 @@ readers can see &quot;this block triggered an inline of file <code>File</code>&q
</h2>
<a id="Hi_NcParsers_Keywords_SubProgramCall_File_" data-uid="Hi.NcParsers.Keywords.SubProgramCall.File*"></a>
<a id="Hi_NcParsers_Keywords_SubProgramCall_FileName_" data-uid="Hi.NcParsers.Keywords.SubProgramCall.FileName*"></a>
<h3 id="Hi_NcParsers_Keywords_SubProgramCall_File" data-uid="Hi.NcParsers.Keywords.SubProgramCall.File">
File
<h3 id="Hi_NcParsers_Keywords_SubProgramCall_FileName" data-uid="Hi.NcParsers.Keywords.SubProgramCall.FileName">
FileName
</h3>
<div class="markdown level1 summary"><p>Resolved file path that supplied the inlined blocks. Useful for diagnostics when a fallback filename pattern matched.</p>
<div class="markdown level1 summary"><p>Bare matched file name (e.g. <code>&ldquo;O1234.NC&rdquo;</code>). The resolver
tries several fallback patterns
(<a class="xref" href="Hi.NcParsers.EvaluationSyntaxs.MacroFileResolver.html#Hi_NcParsers_EvaluationSyntaxs_MacroFileResolver_FilenamePatterns">FilenamePatterns</a>);
this records which one hit. JSON-portable across environments —
the folder context (internal vs external storage) is captured by
the host's <code>SubProgramFolderConfig</code> dependency, not encoded
here.</p>
</div>
<div class="markdown level1 conceptual"></div>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public string File { get; set; }</code></pre>
<pre><code class="lang-csharp hljs">public string FileName { get; set; }</code></pre>
</div>