genshi.template.directives.ContentDirective

Package genshi :: Package template :: Module directives :: Class ContentDirective |

# Class ContentDirective

    object --+
             |
     Directive --+
                 |
                ContentDirective

Implementation of the `py:content` template directive.

This directive replaces the content of the element with the result of evaluating the value of the `py:content` attribute:

    >>> from genshi.template import MarkupTemplate
    >>> tmpl = MarkupTemplate('''<ul xmlns:py="http://genshi.edgewall.org/">
    ...   <li py:content="bar">Hello</li>
    ... </ul>''')
    >>> print(tmpl.generate(bar='Bye'))
    <ul>
      <li>Bye</li>
    </ul>

Nested Classes
Inherited from `Directive`: `__metaclass__`

Instance Methods
Inherited from `Directive`: `__call__`, `__init__`, `__repr__` Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Class Methods
attach(cls, template, stream, value, namespaces, pos) Called after the template stream has been completely parsed. |

Class Variables
| tagname = ``'``content``'``

Properties
Inherited from `Directive`: `expr` Inherited from `object`: `__class__`

Method Details

### attach(cls, template, stream, value, namespaces, pos) Class Method |
Called after the template stream has been completely parsed. This class method should return a `(directive, stream)` tuple. If `directive` is not `None`, it should be an instance of the Directive class, and gets added to the list of directives applied to the substream at runtime. `stream` is an event stream that replaces the original stream associated with the directive. Parameters: `template` - the Template object `stream` - the event stream associated with the directive `value` - the argument value for the directive; if the directive was specified as an element, this will be an Attrs instance with all specified attributes, otherwise it will be a `unicode` object with just the attribute value `namespaces` - a mapping of namespace URIs to prefixes `pos` - a `(filename, lineno, offset)` tuple describing the location where the directive was found in the source Overrides: Directive.attach (inherited documentation)