Skip to content

Refactor Result so that reducers may instantiate this state object with a custom method #1

@skloibi

Description

@skloibi

This would allow reducers that initially analyze the bytecode and preemptively provide targets for the reduction operation (e.g. gather all methods that may be removed). This requires the main loop to first get the initial state from the reducer and then pass it on in each iteration. The main loop would then repeat this whole process until the initial state is "empty" or "final" (i.e. no more options are available).
This should be compatible with the current model (i.e. transformation determines whether current state is final).
Additionally this state model allows for further optimizations such as remembering which targets are "expensive" (e.g. cause infinite loops during execution) and should be placed last wherever possible.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions