Language of your choice: library documentation
This interface is implemented by helper objects that handle the low-level details of node printing. It is used by Les2Printer.
Specifically, INodePrinterWriter objects are in charge of how much to indent lines of code, and ensuring that there are spaces between tokens whenever omitting a space would screw up parsing.
Although this interface is also used by EC#, I've kept it in the Les namespace because I'm not yet confident that it's a good design for arbitrary languages.
|Gets the object being written to (TextWriter or StringBuilder) More...|
|void||Write (char c, bool finishToken)|
|void||Write (string s, bool finishToken)|
|void||Newline (bool pending=false)|
|void||Push (LNode newNode)|
|void||Pop (LNode oldNode)|
Gets the object being written to (TextWriter or StringBuilder)