fix: Correct rule composition in PatternRule to properly chain subrules

This commit is contained in:
Andreas Koepf (aider) 2025-01-23 14:07:18 +01:00
parent a2686341a3
commit 36c6905355

View file

@ -64,10 +64,10 @@ class PatternRule:
if position > 0:
result += sequence[position - 1]
elif op == Operation.COMPOSE:
# Apply each subrule in sequence
temp_sequence = sequence[:position + 1]
temp_sequence[-1] = result # Use current result as input
# Apply each subrule in sequence, passing the result through
for subrule in self.subrules:
temp_sequence = sequence[:position + 1]
temp_sequence[-1] = result # Use current result as input
result = subrule.apply(temp_sequence, position)
return result