Uses of Record Class
org.ek9lang.compiler.ir.data.CallDetails
Packages that use CallDetails
Package
Description
IR Data Structures - Metadata and detail classes for IR instructions.
IR Instruction Classes - The instruction set for EK9 intermediate representation.
-
Uses of CallDetails in org.ek9lang.compiler.ir.data
Methods in org.ek9lang.compiler.ir.data that return CallDetailsModifier and TypeMethodDescriptionCallDetails.withConventions(CallConventions newConventions) This call with different ownership conventions (EK9_IR_OWNERSHIP_MODEL.md ยง5); everything else unchanged.CallDetails.withStatementOwned(boolean newStatementOwned) This call with phase 5's decision on whether the statement making it owns (and closes) the closeable it returns (support/MarkStatementOwned); everything else unchanged. -
Uses of CallDetails in org.ek9lang.compiler.ir.instructions
Methods in org.ek9lang.compiler.ir.instructions with parameters of type CallDetailsModifier and TypeMethodDescriptionstatic CallInstrCallInstr.call(String result, DebugInfo debugInfo, CallDetails callDetails) Create method call with complete type information from resolved symbols: CALL result = object.method(args...)static CallInstrCallInstr.callStatic(String result, DebugInfo debugInfo, CallDetails callDetails) Create static method call with complete type information: CALL_STATIC result = Type.method(args...)static CallInstrCallInstr.callStatic(VariableDetails variableDetails, CallDetails callDetails) static CallInstrCallInstr.constructor(String result, DebugInfo debugInfo, CallDetails callDetails) Create constructor call with complete type information: CALL result = Type.<init>(args...)static CallInstrCallInstr.operator(String result, DebugInfo debugInfo, CallDetails callDetails) Create EK9 operator call with complete type information: CALL result = object._operatorMethod(args...) Common operators: _add, _sub, _eq, _lt, _addAss, _isSet, etc.static CallInstrCallInstr.operator(VariableDetails variableDetails, CallDetails callDetails) -
Uses of CallDetails in org.ek9lang.compiler.phase7.calls
Classes in org.ek9lang.compiler.phase7.calls that implement interfaces with type arguments of type CallDetailsModifier and TypeClassDescriptionfinal classProvides IR Call details for making a call to the EK9 Boolean type to call the _false() method.final classJust provides the IR Call details for making a call to the Ek9 Boolean type to call the _true() method.final classSupplies the call details to get a Boolean false value.Methods in org.ek9lang.compiler.phase7.calls that return CallDetailsModifier and TypeMethodDescriptionlhs._and(rhs)returning a Boolean.Create CallDetails for _isSet() call on the specified operand.CallDetailsBuilder.CallDetailsResult.callDetails()Returns the value of thecallDetailsrecord component.CallDetailsForOfFalse.get()The unary~on a Boolean, returning the inverted Boolean.lhs._or(rhs)returning a Boolean.Constructors in org.ek9lang.compiler.phase7.calls with parameters of type CallDetailsModifierConstructorDescriptionCallDetailsResult(CallDetails callDetails, List<IRInstr> allInstructions) Creates an instance of aCallDetailsResultrecord class. -
Uses of CallDetails in org.ek9lang.compiler.phase7.generation
Methods in org.ek9lang.compiler.phase7.generation with parameters of type CallDetailsModifier and TypeMethodDescriptionvoidIRInstructionBuilder.callStatic(String targetVariable, CallDetails callDetails) Create a static call instruction using current context.voidIRInstructionBuilder.callWithTarget(String targetVariable, CallDetails callDetails) Create a call instruction with target variable using current context. -
Uses of CallDetails in org.ek9lang.compiler.phase7.generator
Methods in org.ek9lang.compiler.phase7.generator that return CallDetailsModifier and TypeMethodDescriptionprotected abstract CallDetailsAbstractShortCircuitGenerator.getCallDetails(String lhsVariable, String rhsVariable) protected CallDetailsShortCircuitAndGenerator.getCallDetails(String lhsVariable, String rhsVariable) protected CallDetailsShortCircuitOrGenerator.getCallDetails(String lhsVariable, String rhsVariable) protected CallDetailsAbstractStreamStageGenerator.streamFunctionCall(FunctionSymbol fn, String funcInstanceVar, List<ISymbol> flowingTypes, List<String> argVars, String returnTypeName, DebugInfo debugInfo, List<IRInstr> setupInstructions) THE shared builder for a stream stage-function_callinvocation - used by every stage that invokes a resolved function on the flowing element(s): filter/reject and split predicates, map and tee mappers, uniq and group key-functions, and the join fold.Methods in org.ek9lang.compiler.phase7.generator with parameters of type CallDetailsModifier and TypeMethodDescriptionStreamPipelineMachinery.closeSource(CallDetails closeCall, DebugInfo debugInfo) THE close of a drained stream source (the async executor), in its pipeline's finally region. -
Uses of CallDetails in org.ek9lang.compiler.phase7.support
Methods in org.ek9lang.compiler.phase7.support that return CallDetailsModifier and TypeMethodDescriptiontracker.addGroup(group)on a group or split tracker.THE append for the buffer of a stage:ListBufferCalls.keep(String, String)when the stage keeps unset elements (KeepsUnsetElements), otherwiseListBufferCalls.pipe(String, String).StreamHelperCalls.asyncCancel(String executorVar) executor.cancel().StreamHelperCalls.asyncClose(String executorVar) executor.close().StreamHelperCalls.asyncSortResults(String executorVar) executor.sortResults().StreamHelperCalls.asyncSubmit(String executorVar, String itemVar) executor.submit(item).CallDetailsFactory.call(String targetObject, String targetTypeName, boolean externallyLinked, String methodName, List<String> parameterTypes, String returnTypeName, List<String> arguments, CallMetaDataDetails metaData) A non-virtual, non-trait call tomethodNameontargetObject.CallDetailsFactory.call(String targetObject, ISymbol targetType, String methodName, List<String> parameterTypes, String returnTypeName, List<String> arguments, CallMetaDataDetails metaData) The same call, but taking the target type as a SYMBOL so BOTH the emitted type name and the virtual-dispatch flag derive from it - they then cannot disagree.CallDetailsFactory.constructorCall(String typeName, boolean externallyLinked, List<String> parameterTypes, List<String> arguments, CallMetaDataDetails metaData) A constructor call ontypeName: target object, target type and return type are alltypeNameand the method isIRConstants.INIT_METHOD.CallDetailsFactory.constructorCall(String typeName, boolean externallyLinked, List<String> parameterTypes, List<String> arguments, CallMetaDataDetails metaData, boolean statementOwned) A constructor call ontypeNamemade at a source call site, carrying phase 5's decision on whether the statement making it owns (and closes) the closeable it makes (support/MarkStatementOwned).ListBufferCalls.create()new org.ek9.lang::List()- an empty raw buffer typed as the List itself.new org.ek9.lang::List()where the buffer is immediately viewed asreturnTypeName- used where the drain target is declared at the collection type the stage produces rather than at the raw List.The staticcreate()of a helper type: a fresh helper typed as itself.StreamHelperCalls.createTail(String tailTypeName, String integerTypeName, String limitVar) The staticcreate(Integer limit)of the tail buffer type.CallDetailsFactory.defaultConstructorCall(String typeName, boolean externallyLinked, CallMetaDataDetails metaData) The no-argument default constructor call ontypeName.CallDetailsFactory.functionCall(String functionInstanceVar, String functionTypeName, boolean externallyLinked, List<String> parameterTypes, String returnTypeName, List<String> arguments, CallMetaDataDetails metaData, boolean isDelegateCall) THE shared shape for invoking a function through its_callmethod - use this rather than deciding the dispatch flag at each of the three sites that emit one.CallDetailsFactory.functionCall(String functionInstanceVar, String functionTypeName, boolean externallyLinked, List<String> parameterTypes, String returnTypeName, List<String> arguments, CallMetaDataDetails metaData, boolean isDelegateCall, boolean statementOwned) A function call made at a source call site, carrying phase 5's decision on whether the statement making it owns (and closes) the closeable it returns (support/MarkStatementOwned).CallDetailsFactory.generatedConstructorCall(String typeName, boolean externallyLinked, List<String> parameterTypes, List<String> arguments, CallMetaDataDetails metaData) A constructor call the compiler GENERATES inside a synthesised body (a constrained type's base value, copy and wrapping constructor): no target object, the type named and returned, the methodIRConstants.INIT_METHOD, no dispatch, and the metadata as given.StreamHelperCalls.groupIsKeyChanged(String groupTrackerVar, String keyVar) group.isKeyChanged(key): a Boolean.StreamHelperCalls.groupIsKeyChanged(String groupTrackerVar, String keyVar, String elementVar) group.isKeyChanged(key, element)forgroup by: the key AND the element it was made from, so an unset ELEMENT is kept for the final unset group whatever its key is (D24,sort | group).StreamHelperCalls.guardDiffer(String sourceVar, String sinkVar) The staticEk9StreamGuard.differ(source, sink): fails when a stream's evaluated source and one of its appending sinks are the same object (THE run-time alias check, Steve 2026-10-27).source.hasNext()on a drained helper (async executor, tracker or tail buffer): a Boolean.StreamHelperCalls.hasNextGroup(String trackerVar, String trackerTypeName) tracker.hasNextGroup()on a group or split tracker: a Boolean.buffer.iterator()- iterate the drained buffer to emit downstream.StreamHelperCalls.joinHasResult(String joinTrackerVar) join.hasResult(): a Boolean.StreamHelperCalls.joinIsFirst(String joinTrackerVar) join.isFirst(): a Boolean.buffer._addAss(item)- append one drained element AS IT IS, unset or not:+=stores what it is given, where|drops an unset value.source.next()on a drained helper: anAnyelement.tracker.nextGroup()on a group or split tracker: anAnygroup.buffer._pipe(item)- append one drained element.CallDetailsFactory.resolvedCall(String targetObject, DispatchFacts dispatch, String methodName, List<String> parameterTypes, String returnTypeName, List<String> arguments, CallMetaDataDetails metaData, boolean statementOwned) THE call to a callee whose dispatch was decided byDispatchFacts- the type it names, interface or not, virtual or not, extern or not all come from the facts, so a route never writes the four flags by hand.ShortCircuitBlock.Operands.resultCall()Returns the value of theresultCallrecord component.The staticEk9Sort.sort(buffer).The staticEk9Sort.sort(buffer, comparator).StreamHelperCalls.splitIsBoundary(String splitTrackerVar, String itemVar, String predicateResultVar) split.isBoundary(item, predicateResult): the item and the boundary predicate's answer for it; a primitive boolean.tail.pipe(item)on the tail buffer.uniq.isNew(item): a Boolean.StreamHelperCalls.wasStarted(String trackerVar, String trackerTypeName) tracker.wasStarted()on a group or split tracker: a Boolean.Methods in org.ek9lang.compiler.phase7.support that return types with arguments of type CallDetailsModifier and TypeMethodDescriptionTextFactoryDispatch.redirectForTextBase(IScope constructorParentScope, String typeName, List<String> parameterTypes, List<String> argumentVariables, CallMetaDataDetails metaData) IfconstructorParentScopeis a TEXT base type, return the static_textFactoryCallDetailsto emit (viaCallInstr.callStatic) instead of a direct constructor call; otherwiseOptional.empty()and the caller emits a normal constructor call.Constructors in org.ek9lang.compiler.phase7.support with parameters of type CallDetailsModifierConstructorDescriptionOperands(String targetVariable, OperandEvaluation left, String leftPrimitive, OperandEvaluation right, String resultTemp, CallDetails resultCall, String scopeId, DebugInfo debugInfo) Creates an instance of aOperandsrecord class.