Class IncrementEvaluator

java.lang.Object
org.ek9lang.compiler.phase7.support.IncrementEvaluator
All Implemented Interfaces:
Function<IncrementParams, List<IRInstr>>

public final class IncrementEvaluator extends Object implements Function<IncrementParams, List<IRInstr>>
CONCERN: Loop counter increment/decrement with assignment. RESPONSIBILITY: Call increment/decrement operator and update loop counter. REUSABILITY: ALL loop generators (for, while with increment).

Composite helper that combines: 1. UnaryOperatorInvoker (for ++ or -- operator call) 2. VAR_MOVE assignment (update loop counter)

This pattern appears in: - ForStatementGenerator (loop counter increment/decrement) - WhileStatementGenerator (manual increment patterns)

  • Constructor Details

  • Method Details

    • apply

      public List<IRInstr> apply(IncrementParams params)
      Evaluate increment/decrement and update counter.

      Handles: 1. Unary operator invocation (++ or --) 2. VAR_MOVE to update loop counter variable 3. Memory management for increment result

      Specified by:
      apply in interface Function<IncrementParams, List<IRInstr>>
      Parameters:
      params - Increment parameters
      Returns:
      Instructions ending with updated counter variable