Uses of Record Class
org.ek9lang.compiler.phase7.generator.HelperSource
Packages that use HelperSource
-
Uses of HelperSource in org.ek9lang.compiler.phase7.generator
Methods in org.ek9lang.compiler.phase7.generator that return HelperSourceModifier and TypeMethodDescription(package private) static HelperSourceHelperSource.asyncResults(String executorVar) The async executor's results, in completion order.(package private) static HelperSourceThe buckets a group or split tracker stored during its drain.(package private) static HelperSourceHelperSource.tailBuffer(String tailBufferVar) The last N elements the tail buffer kept.Methods in org.ek9lang.compiler.phase7.generator with parameters of type HelperSourceModifier and TypeMethodDescription(package private) voidStreamEmissionEngine.bufferSortEmit(HelperSource source, ISymbol bucketType, List<EK9Parser.StreamPartContext> preSortStages, EK9Parser.StreamPartContext sortStage, List<EK9Parser.StreamPartContext> postSortStages, TerminalSetup terminalSetup, org.antlr.v4.runtime.tree.ParseTree probeSite, DebugInfo debugInfo, List<IRInstr> instructions) (package private) DrainConditionStreamPipelineMachinery.drainCondition(HelperSource source, List<StageState.Counter> heads, DebugInfo debugInfo) THE drain-loop condition:source.hasNext()evaluated in its own scope, bounded byheads(rule B):c < l AND ... source.hasNext(), the counters first.(package private) voidStreamPipelineMachinery.drainNextIntoItem(List<IRInstr> body, HelperSource source, String castTypeName, String drainItemVar, DebugInfo debugInfo) THE drain-loop body preamble:raw = source.next()(typedAny), cast to the element type, then bound into the persistent drain item variable.(package private) IteratorSetupStreamPipelineMachinery.drainSourceToIterator(HelperSource source, ISymbol bucketType, boolean keepsUnset, DebugInfo debugInfo, List<IRInstr> instructions) As above;keepsUnsetappends with+=so an UNSET element survives the buffer - a stage never drops one (KeepsUnsetElements).(package private) IteratorSetupStreamPipelineMachinery.drainSourceToIterator(HelperSource source, ISymbol bucketType, DebugInfo debugInfo, List<IRInstr> instructions) MATERIALISE a buffering value source (a GROUP/SPLIT tracker's hasNextGroup/nextGroup, or an async executor's hasNext/next) into a fresh raw EK9_LIST buffer and return an IteratorSetup over it.(package private) StageWrapResultStreamPipelineMachinery.helperDrainBody(HelperSource source, String castTypeName, String itemVar, Supplier<StageWrapResult> downstream, DebugInfo debugInfo) THE body of a loop over a runtime helper: its own per-element scope,item = (castType) source.next()(StreamPipelineMachinery.drainNextIntoItem(List, HelperSource, String, String, DebugInfo)), then whatdownstreambuilds - generated once that scope is current, so what it makes per element is owned by the iteration (A11).(package private) ConditionAndPostLoopStreamPipelineMachinery.helperDrainLoop(HelperSource source, String castTypeName, String itemVar, List<StageState.Counter> heads, Supplier<StageWrapResult> downstream, DebugInfo debugInfo) THE loop over a runtime helper - the twin ofStreamPipelineMachinery.buildStreamLoop(IteratorSetup, List, String, ISymbol, boolean, ParseTree, StreamLoopSink, DebugInfo)for anHelperSourcerather than an iterator: theStreamPipelineMachinery.drainCondition(HelperSource, List, DebugInfo)(bounded byheads), then theStreamPipelineMachinery.helperDrainBody(HelperSource, String, String, Supplier, DebugInfo).