Status: New
Owner: ----
Labels: Type-Refactoring Priority-Medium

New issue 996 by ihab.awad: Refactor rendering pipeline to always pass tokens *and* marks
http://code.google.com/p/google-caja/issues/detail?id=996

Refactor rendering pipeline so that it always passes consume() *and* mark() events in a
heterogeneous stream until the last possible step. Concretely this means --

* Spacer and Indenter, as currently used from JsPrettyPrinter, accept *and return* a mixed list of
tokens and positions.

* All rendering pipelines end with some form of Concatenator.

* The SourceSpansRenderer and SourceSnippetRenderer no longer need to communicate position information across a delegate renderer by inserting "/*...@n*/" comments, since this information
would be preserved.

* Whatever remains of the SourceSpansRenderer would be a "last step" Concatenator that collects position information, concatenates to text, and builds the debug maps indexing into the
concatenated text.

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

Reply via email to