adiar icon indicating copy to clipboard operation
adiar copied to clipboard

Move `reduce` taint flag out of `e.target()`

Open SSoelvsten opened this issue 1 year ago • 1 comments

We ought to move the taint flag from the e.target().is_flagged() into a separate e.flags[REDUCE_FLAG::CUT_TAINT]. This provides the basis for us to add many of the extensions.

  • For #433, we need to free the current flag to be used for the complementation flag.
  • #434 requires forwarding the hash of the children.
  • #435 requires knowing the variable describing the node and describing its children.

Tasks

  • [ ] Define reduce_arc type to publicly inherit from arc
  • [ ] Add private uint8_t flags variable and a flag(enum) function to access it. Add set_flag(enum) to set the flag.
  • [ ] Replace usage of the flagging on target with using the flag.

SSoelvsten avatar Nov 15 '22 14:11 SSoelvsten