docutils.nodes.NodeVisitor

Package docutils :: Module nodes :: Class NodeVisitor |
[show private | hide private]
[frames | no frames]

## Class NodeVisitor

Known Subclasses:
  `HTMLTranslator`

"Visitor" pattern [GoF95] abstract superclass implementation for document tree traversals.

Each node class has corresponding methods, doing nothing by default; override individual methods for specific and useful behaviour. The "`visit_` + node class name" method is called by `Node.walk()` upon entering a node. `Node.walkabout()` also calls the "`depart_` + node class name" method before exiting a node.

This is a base class for visitors whose `visit_...` & `depart_...` methods should be implemented for all node types encountered (such as for `docutils.writers.Writer` subclasses). Unimplemented methods will raise exceptions.

For sparse traversals, where only certain node types are of interest, subclass `SparseNodeVisitor` instead. When (mostly or entirely) uniform processing is desired, subclass `GenericNodeVisitor`.

[GoF95] | Gamma, Helm, Johnson, Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA, USA, 1995.

Method Summary
| `__init__(self, document)`
| ``unknown_departure`(self, node)` Called before exiting unknown `Node` types.
| ``unknown_visit`(self, node)` Called when entering unknown `Node` types.

Method Details

### unknown_departure(self, node) Called before exiting unknown `Node` types. Raise exception unless overridden.

### unknown_visit(self, node) Called when entering unknown `Node` types. Raise an exception unless overridden.

Generated by Epydoc 2.1 on Sat Mar 20 17:46:17 2004 | http://epydoc.sf.net