Skip to content

Commit

Permalink
Re-imagine infectiousness (Part 1/N)
Browse files Browse the repository at this point in the history
- lose the $!buffer attribute on the ParaSeq class: initiall, a
  BufferIterator will be made as the source: if nothing special
  happens, then this will produce the values transparently.  If
  a !start *does* happen, the buffer will be zapped from the
  BufferIterator and become the first buffer to be handled, and
  the sourc iterator of the BufferIterator will become the source
  iterator of the ParaSeq object.  This also allows losing the
  $!parent attribute in BufferIterator
- added many invocant constraints
- replace the !pass-the-chain method by !re-source: this will no
  longer create a new ParaSeq object because it is not needed:
  swapping source/result iterators is enough, as each iterator
  itself should have all it needs.
- the default state of $!result is now nqp::null

Sadly this does not fix all issues with infectiousness yet, hence
only the Part 1/N
  • Loading branch information
lizmat committed Jun 12, 2024
1 parent 2b758cc commit 6a959ed
Showing 1 changed file with 91 additions and 86 deletions.
Loading

0 comments on commit 6a959ed

Please sign in to comment.