Uses of Record Class
org.ek9lang.compiler.ir.support.DebugInfo
Packages that use DebugInfo
Package
Description
-
Uses of DebugInfo in org.ek9lang.compiler.ir.data
Methods in org.ek9lang.compiler.ir.data that return DebugInfoModifier and TypeMethodDescriptionControlFlowChainDetails.debugInfo()
Returns the value of thedebugInfo
record component.LogicalDetails.debugInfo()
Returns the value of thedebugInfo
record component.Methods in org.ek9lang.compiler.ir.data with parameters of type DebugInfoModifier and TypeMethodDescriptionstatic ControlFlowChainDetails
ControlFlowChainDetails.createIfElse
(String result, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for an if/else statement.static ControlFlowChainDetails
ControlFlowChainDetails.createIfElseWithGuards
(String result, List<String> guardVariables, List<IRInstr> guardScopeSetup, String guardScopeId, String conditionScopeId, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for if/else with guard variables.static ControlFlowChainDetails
ControlFlowChainDetails.createQuestionOperator
(String result, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for a Question operator (?).static ControlFlowChainDetails
ControlFlowChainDetails.createSwitch
(String result, String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup, String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for a general switch statement.static ControlFlowChainDetails
ControlFlowChainDetails.createSwitchEnum
(String result, String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup, String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, EnumOptimizationDetails enumOptimizationInfo, DebugInfo debugInfo, String scopeId) Create details for a switch statement with enum optimization.static ControlFlowChainDetails
ControlFlowChainDetails.createSwitchWithGuards
(String result, List<String> guardVariables, List<IRInstr> guardScopeSetup, String guardScopeId, String conditionScopeId, String evaluationVariable, String evaluationVariableType, List<IRInstr> evaluationVariableSetup, String returnVariable, String returnVariableType, List<IRInstr> returnVariableSetup, List<ConditionCaseDetails> conditionChain, List<IRInstr> defaultBodyEvaluation, String defaultResult, DebugInfo debugInfo, String scopeId) Create details for switch with guard variables.Constructors in org.ek9lang.compiler.ir.data with parameters of type DebugInfoModifierConstructorDescriptionControlFlowChainDetails
(String result, String chainType, GuardVariableDetails guardDetails, EvaluationVariableDetails evaluationDetails, ReturnVariableDetails returnDetails, List<ConditionCaseDetails> conditionChain, DefaultCaseDetails defaultDetails, EnumOptimizationDetails enumOptimizationInfo, DebugInfo debugInfo, String scopeId) Creates an instance of aControlFlowChainDetails
record class.LogicalDetails
(String result, OperandEvaluation leftEvaluation, ConditionalEvaluation conditionalEvaluation, OperandEvaluation rightEvaluation, OperandEvaluation resultEvaluation, DebugInfo debugInfo, String scopeId) Creates an instance of aLogicalDetails
record class. -
Uses of DebugInfo in org.ek9lang.compiler.ir.instructions
Methods in org.ek9lang.compiler.ir.instructions that return DebugInfoModifier and TypeMethodDescriptionField.getDebugInfo()
Get debug information for this field.OperationInstr.getDebugInfo()
Methods in org.ek9lang.compiler.ir.instructions that return types with arguments of type DebugInfoModifier and TypeMethodDescriptionIRInstr.getDebugInfo()
Get debug information for this instruction.Methods in org.ek9lang.compiler.ir.instructions with parameters of type DebugInfoModifier and TypeMethodDescriptionstatic BranchInstr
BranchInstr.assertValue
(String condition, DebugInfo debugInfo) Create assert instruction with debug info: ASSERT condition.static CallInstr
CallInstr.call
(String result, DebugInfo debugInfo, CallDetails callDetails) Create method call with complete type information from resolved symbols: CALL result = object.method(args...)static CallInstr
CallInstr.callDispatcher
(String result, DebugInfo debugInfo, CallDetails callDetails) Create dispatcher method call with complete type information: CALL_DISPATCHER result = object.dispatcherMethod(args...)static CallInstr
CallInstr.callStatic
(String result, DebugInfo debugInfo, CallDetails callDetails) Create static method call with complete type information: CALL_STATIC result = Type.method(args...)static CallInstr
CallInstr.callVirtual
(String result, DebugInfo debugInfo, CallDetails callDetails) Create virtual method call with complete type information: CALL_VIRTUAL result = object.method(args...)static CallInstr
CallInstr.constructor
(String result, DebugInfo debugInfo, CallDetails callDetails) Create constructor call with complete type information: CALL result = Type.<init>(args...)static ScopeInstr
Create scope enter instruction with debug info: SCOPE_ENTER scope_id.static ScopeInstr
Create scope exit instruction with debug info: SCOPE_EXIT scope_id.static MemoryInstr
MemoryInstr.functionInstance
(String result, String functionType, DebugInfo debugInfo) Create FUNCTION_INSTANCE instruction with debug info: FUNCTION_INSTANCE result = FunctionType.static MemoryInstr
Create IS_NULL instruction with debug info: IS_NULL result = operand.static LabelInstr
Create label instruction with debug info: LABEL label_name.static LiteralInstr
Create instruction to load any literal value.static MemoryInstr
Create LOAD instruction with debug info: LOAD dest = source_location.static CallInstr
CallInstr.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 MemoryInstr
Create REFERENCE instruction with debug info: REFERENCE variable_name, type_info.static ScopeInstr
static MemoryInstr
Create RELEASE instruction with debug info: RELEASE object, decrement ARC.static MemoryInstr
Create RETAIN instruction with debug info: RETAIN object, i.e.static BranchInstr
BranchInstr.returnValue
(String value, DebugInfo debugInfo) Create return with value and debug info: RETURN value.static BranchInstr
BranchInstr.returnVoid
(DebugInfo debugInfo) Create return with no value and debug info: RETURN.static MemoryInstr
Create STORE instruction with debug info: STORE dest_location = source.Constructors in org.ek9lang.compiler.ir.instructions with parameters of type DebugInfoModifierConstructorDescriptionCreate a new Field IR node.Create instruction with result and debug information.OperationInstr
(ISymbol symbol, DebugInfo debugInfo) -
Uses of DebugInfo in org.ek9lang.compiler.ir.support
Methods in org.ek9lang.compiler.ir.support that return DebugInfoModifier and TypeMethodDescriptionstatic DebugInfo
DebugInfo.from
(CompilableSource compilableSource, IToken token) Create DebugInfo from an ISymbol's source token.static DebugInfo
Create DebugInfo with just file and position (no original text). -
Uses of DebugInfo in org.ek9lang.compiler.phase7.generation
Classes in org.ek9lang.compiler.phase7.generation that implement interfaces with type arguments of type DebugInfoModifier and TypeClassDescriptionfinal class
Creates the debug information for the symbol provided.Methods in org.ek9lang.compiler.phase7.generation that return DebugInfoModifier and TypeMethodDescriptionIRGenerationContext.createDebugInfo
(org.antlr.v4.runtime.Token token) Create debug info from an ANTLR token.IRGenerationContext.createDebugInfo
(org.antlr.v4.runtime.tree.ParseTree ctx) Create debug info from a parse context.IRGenerationContext.createDebugInfo
(Ek9Token token) Create debug info from a token.IRGenerationContext.createDebugInfo
(IToken token) Create debug info from an EK9 IToken.IRInstructionBuilder.createDebugInfo
(org.antlr.v4.runtime.Token token) Create debug info from an ANTLR token.IRInstructionBuilder.createDebugInfo
(org.antlr.v4.runtime.tree.ParseTree ctx) IRInstructionBuilder.createDebugInfo
(Ek9Token token) Create debug info from a token.IRInstructionBuilder.createDebugInfo
(IToken token) Create debug info from an EK9 IToken.IRStackFrame.debugInfo()
Returns the value of thedebugInfo
record component.Methods in org.ek9lang.compiler.phase7.generation that return types with arguments of type DebugInfoModifier and TypeMethodDescriptionIRGenerationContext.currentDebugInfo()
Get current debug info from the stack.IRGenerationStack.currentDebugInfo()
Get current debug info from the top frame.Methods in org.ek9lang.compiler.phase7.generation with parameters of type DebugInfoModifier and TypeMethodDescriptionstatic IRStackFrame
IRStackFrame.basic
(String scopeId, DebugInfo debugInfo, IRFrameType frameType) Create a basic frame with just scope and debug info.void
IRGenerationContext.enterMethodScope
(String scopeId, DebugInfo debugInfo, IRFrameType frameType) Enter a method/function scope with fresh IRContext for counter isolation.void
IRGenerationContext.enterScope
(String scopeId, DebugInfo debugInfo, IRFrameType frameType) Enter a new IR scope context.static IRStackFrame
IRStackFrame.full
(String scopeId, DebugInfo debugInfo, IRFrameType frameType, boolean hasLeftHandSide, Object contextData) Create a full frame with all parameters.void
IRInstructionBuilder.returnValue
(String variableName, DebugInfo debugInfo) static IRStackFrame
IRStackFrame.withContext
(String scopeId, DebugInfo debugInfo, IRFrameType frameType, Object contextData) Create a frame with additional context data.static IRStackFrame
IRStackFrame.withLeftHandSide
(String scopeId, DebugInfo debugInfo, IRFrameType frameType, boolean hasLeftHandSide) Create a frame with left-hand side indication.Constructors in org.ek9lang.compiler.phase7.generation with parameters of type DebugInfoModifierConstructorDescriptionIRStackFrame
(String scopeId, DebugInfo debugInfo, IRFrameType frameType, boolean hasLeftHandSide, Object contextData) Creates an instance of aIRStackFrame
record class. -
Uses of DebugInfo in org.ek9lang.compiler.phase7.generator
Methods in org.ek9lang.compiler.phase7.generator with parameters of type DebugInfoModifier and TypeMethodDescriptionControlFlowChainGenerator.generateGuardedAssignment
(ISymbol lhsSymbol, List<IRInstr> assignmentEvaluation, String assignmentResult, DebugInfo debugInfo) Generate SWITCH_CHAIN_BLOCK for guarded assignment (:=?).ControlFlowChainGenerator.generateQuestionOperatorForVariable
(ISymbol variableSymbol, String resultVariable, DebugInfo debugInfo) Generate SWITCH_CHAIN_BLOCK for Question operator applied to a variable. -
Uses of DebugInfo in org.ek9lang.compiler.phase7.support
Methods in org.ek9lang.compiler.phase7.support that return DebugInfoModifier and TypeMethodDescriptionVariableDetails.debugInfo()
Returns the value of thedebugInfo
record component.Constructors in org.ek9lang.compiler.phase7.support with parameters of type DebugInfoModifierConstructorDescriptionVariableDetails
(String resultVariable, DebugInfo debugInfo) Creates an instance of aVariableDetails
record class.