parameters: (self, parsetree, renderfunc, data=None)
docstring: Create the Template/Subtemplate/Macro.
  
          :Parameters:
              - `parsetree`: parse-tree of the template/subtemplate/macro
              - `renderfunc`: render-function
              - `data`: data to fill into the template by default (dictionary).
                This data may later be overridden when rendering the template.
          :Exceptions:
              - `TypeError`: if `data` is not a dictionary
docstring_summary: Create the Template/Subtemplate/Macro.
docstring_tokens: Create the Template / Subtemplate / Macro .
function: def __init__(self, parsetree, renderfunc, data=None):
          """Create the Template/Subtemplate/Macro.
  
          :Parameters:
              - `parsetree`: parse-tree of the template/subtemplate/macro
              - `renderfunc`: render-function
              - `data`: data to fill into the template by default (dictionary).
                This data may later be overridden when rendering the template.
          :Exceptions:
              - `TypeError`: if `data` is not a dictionary
          """
          #TODO: parameter-checking?
          self.parsetree = parsetree
          if isinstance(data, dict):
              self.data = data
          elif data is None:
              self.data = {}
          else:
              raise TypeError('"data" must be a dict (or None).')
          self.current_data = data
          self._render = renderfunc
function_tokens: def __init__ ( self , parsetree , renderfunc , data = None ) : #TODO: parameter-checking? self . parsetree = parsetree if isinstance ( data , dict ) : self . data = data elif data is None : self . data = { } else : raise TypeError ( '"data" must be a dict (or None).' ) self . current_data = data self . _render = renderfunc