rename XFactory.Regs to XFactory.Generators.
This commit is contained in:
@@ -632,6 +632,59 @@ materialization in lock-step with syntax/semantic processing).</p>
|
||||
|
||||
|
||||
|
||||
<a id="Hi_Common_Collections_LazyLinkedList_1_ReplaceSource_" data-uid="Hi.Common.Collections.LazyLinkedList`1.ReplaceSource*"></a>
|
||||
|
||||
<h3 id="Hi_Common_Collections_LazyLinkedList_1_ReplaceSource_System_Collections_Generic_IEnumerable__0__" data-uid="Hi.Common.Collections.LazyLinkedList`1.ReplaceSource(System.Collections.Generic.IEnumerable{`0})">
|
||||
ReplaceSource(IEnumerable<T>)
|
||||
|
||||
</h3>
|
||||
|
||||
<div class="markdown level1 summary"><p>Replaces the current source's remaining items with <code class="paramref">src</code>.
|
||||
Discards anything the old source had queued (it is disposed); the next
|
||||
on-demand materialization (triggered by <a class="xref" href="Hi.Common.Collections.LazyLinkedListNode-1.html#Hi_Common_Collections_LazyLinkedListNode_1_Next">Next</a>
|
||||
on the present tail or <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_First">First</a> on an empty list) yields from
|
||||
<code class="paramref">src</code> only. Already-materialized nodes — including the
|
||||
present tail — are unaffected, so this is the natural way to redirect
|
||||
future execution from the current tail onwards (for example, a GOTO
|
||||
that re-segments the file from the target N{seq} line: the GOTO host
|
||||
block stays materialized as the predecessor, and the post-target
|
||||
re-segmentation becomes the new source while the original between-here-
|
||||
and-EOF source is dropped).</p>
|
||||
</div>
|
||||
<div class="markdown level1 conceptual"></div>
|
||||
|
||||
<div class="codewrapper">
|
||||
<pre><code class="lang-csharp hljs">public void ReplaceSource(IEnumerable<T> src)</code></pre>
|
||||
</div>
|
||||
|
||||
<h4 class="section">Parameters</h4>
|
||||
<dl class="parameters">
|
||||
<dt><code>src</code> <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a><T></dt>
|
||||
<dd><p>The new source. Yielded from on the next materialization.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<h4 class="section" id="Hi_Common_Collections_LazyLinkedList_1_ReplaceSource_System_Collections_Generic_IEnumerable__0___remarks">Remarks</h4>
|
||||
<div class="markdown level1 remarks"><p>Constraint: same as <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_PrependSource_System_Collections_Generic_IEnumerable__0__">PrependSource(IEnumerable<T>)</a> — the present tail is
|
||||
the splice point. Differs from <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_PrependSource_System_Collections_Generic_IEnumerable__0__">PrependSource(IEnumerable<T>)</a> in that the
|
||||
old source's untouched tail is NOT preserved after <code class="paramref">src</code>
|
||||
runs out; <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_ReplaceSource_System_Collections_Generic_IEnumerable__0__">ReplaceSource(IEnumerable<T>)</a> drops it. Use <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_PrependSource_System_Collections_Generic_IEnumerable__0__">PrependSource(IEnumerable<T>)</a>
|
||||
for inline expansion (M98 / G65) where the caller's tail must resume
|
||||
after the inlined body; use <a class="xref" href="Hi.Common.Collections.LazyLinkedList-1.html#Hi_Common_Collections_LazyLinkedList_1_ReplaceSource_System_Collections_Generic_IEnumerable__0__">ReplaceSource(IEnumerable<T>)</a> for control-flow
|
||||
redirection (GOTO, M99 P{seq}) where the original tail is no longer
|
||||
reachable.</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user