In the tokenizer (where the structure is clear), and additionally partway through processing, after the TokenStreamPatcher completes, it should be possible to introduce some kinds of compound tokens to reduce useless processing of individual tokens downstream.
For example, table tags might be a good compound token to introduce. List, Indent-Pre, and Paragraph wrapping might then process content of table-cells only in nested transformers with clean state. And where there is sufficient information available about content (ex: no list items / no newlines / no indent-pre), they can entirely skipped. This can lead to performance improvements on pages with large tables by effectively greatly reducing the volume of processed tokens.