Uses of Record Class
org.ek9lang.compiler.phase7.generator.ConditionAndPostLoop
Packages that use ConditionAndPostLoop
-
Uses of ConditionAndPostLoop in org.ek9lang.compiler.phase7.generator
Methods in org.ek9lang.compiler.phase7.generator that return ConditionAndPostLoopModifier and TypeMethodDescription(package private) ConditionAndPostLoopStreamPipelineMachinery.buildStreamLoop(IteratorSetup iteratorSetup, List<StageState.Counter> demandBounds, String itemVar, ISymbol itemType, boolean rawIterator, org.antlr.v4.runtime.tree.ParseTree probeSite, StreamLoopSink sink, DebugInfo debugInfo) The unified iterator-driven stream while-loop skeleton: condition scope (hasNext(), with the demand bounds - the segment's heads, or the async window - folded in ahead of it byStreamDemand) + body scope (binditerator.next()then theStreamLoopSinkbody-tail) + theConditionAndPostLoopthe caller emits withStreamPipelineMachinery.emitStreamLoop(ConditionAndPostLoop, String, DebugInfo, List).(package private) ConditionAndPostLoopStreamPipelineMachinery.buildUnprobedStreamLoop(IteratorSetup iteratorSetup, List<StageState.Counter> demandBounds, String itemVar, ISymbol itemType, boolean rawIterator, StreamLoopSink sink, DebugInfo debugInfo) StreamPipelineMachinery.buildStreamLoop(IteratorSetup, List, String, ISymbol, boolean, ParseTree, StreamLoopSink, DebugInfo)with NO loop-body coverage probe - the emission of a sorted bucket buffer (StreamEmissionEngine.bufferSortEmit), which has never carried one.(package private) ConditionAndPostLoopStreamEmissionEngine.generateConditionAndBody(org.antlr.v4.runtime.tree.ParseTree probeSite, List<EK9Parser.StreamPartContext> stages, IteratorSetup iteratorSetup, String pipelineItemVar, ISymbol elementType, TerminalSetup terminalSetup, DebugInfo debugInfo, List<StageState> stageStates, boolean rawIterator, String pipelineScopeId, List<IRInstr> preLoopInstructions) Generate condition (hasNext) and body (next + stages + terminal pipe).(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).Methods in org.ek9lang.compiler.phase7.generator with parameters of type ConditionAndPostLoopModifier and TypeMethodDescription(package private) voidStreamPipelineMachinery.emitStreamLoop(ConditionAndPostLoop loop, String loopScopeId, DebugInfo debugInfo, List<IRInstr> instructions) THE emission of a built stream loop: its while (StreamPipelineMachinery.emitWhileLoop(ConditionCaseDetails, String, DebugInfo, List)) then its post-loop instructions (a stage that emits after the loop - tail's drain, join's result).