twisted.web.template.Tag(object) class documentationtwisted.web.template
(View In Hierarchy)
A Tag 
represents an XML tags with a tag name, attributes, and children. A Tag can be 
constructed using the special twisted.web.template.tags
object, or it may be constructed directly with a tag name. Tags have a special 
method, __call__, which makes representing trees of XML 
natural using pure python syntax.
| Instance Variable | tagName | The name of the represented element.  For a tag like <div></div>, this would be"div". (type:str) | 
| Instance Variable | attributes | The attributes of the element. (type: dictmappingstrto renderable objects.) | 
| Instance Variable | children | The child Tags of 
thisTag. (type:listof renderable objects.) | 
| Instance Variable | render | The name of the render method to use for this Tag.  This name will 
be looked up at render time by thetwisted.web.template.Elementdoing the rendering, viatwisted.web.template.Element.lookupRenderMethod,
to determine which method to call. (type:str) | 
| Instance Variable | filename | The name of the XML file from which this tag was parsed. If it was not 
parsed from an XML file, None. (type:strorNone) | 
| Instance Variable | lineNumber | The line number on which this tag was encountered in the XML file from 
which it was parsed.  If it was not parsed from an XML file, None. (type:intorNone) | 
| Instance Variable | columnNumber | The column number at which this tag was encountered in the XML file from 
which it was parsed.  If it was not parsed from an XML file, None. (type:intorNone) | 
| Instance Variable | slotData | The data which can fill slots.  If present, a dictionary mapping slot names
to renderable values.  The values in this dict might be anything that can 
be present as the child of a Tag; strings, lists,Tags, generators, 
etc. (type:dictorNone) | 
| Method | __init__ | Undocumented | 
| Method | fillSlots | Remember the slots provided at this position in the DOM. | 
| Method | __call__ | Add children and change attributes on this tag. | 
| Method | clone | Return a clone of this tag. If deep is True, clone all of this tag's children. Otherwise, just shallow copy the children list without copying the children themselves. | 
| Method | clear | Clear any existing children from this tag. | 
| Method | __repr__ | Undocumented | 
| Method | _clone | Clone an arbitrary object; used by Tag.clone. | 
<div></div>, this would be 
"div". (type: str)
  Tag.  This name will 
be looked up at render time by the twisted.web.template.Element
doing the rendering, via twisted.web.template.Element.lookupRenderMethod,
to determine which method to call. (type: str)
  Remember the slots provided at this position in the DOM.
During the rendering of children of this node, slots with names in 
slots will be rendered as their corresponding values.
| Returns | self. This enables the idiomreturn 
tag.fillSlots(...)in renderers. | |
Add children and change attributes on this tag.
This is implemented using __call__ because it then allows the natural syntax:
table(tr1, tr2, width="100%", height="50%", border="1")
Children may be other tag instances, strings, functions, or any other object which has a registered flatten.
Attributes may be 'transparent' tag instances (so that 
a(href=transparent(data="foo", 
render=myhrefrenderer)) works), strings, functions, or any other 
object which has a registered flattener.
If the attribute is a python keyword, such as 'class', you can add an underscore to the name, like 'class_'.
There is one special keyword argument, 'render', which will be used as the name of the renderer and saved as the 'render' attribute of this instance, rather than the DOM 'render' attribute in the attributes dictionary.
Clone an arbitrary object; used by Tag.clone.
| Parameters | obj | an object with a clone method, a list or tuple, or something which should be immutable. | 
| deep | whether to continue cloning child objects; i.e. the contents of lists, the sub-tags within a tag. | |
| Returns | a clone of obj. | |