def _inherit_from(context, uri, calling_uri):
 if (uri is None):
  return None
 template = _lookup_template(context, uri, calling_uri)
 self_ns = context['self']
 ih = self_ns
 while (ih.inherits is not None):
  ih = ih.inherits
 lclcontext = context._locals({'next': ih})
 ih.inherits = TemplateNamespace(('self:%s' % template.uri), lclcontext, template=template, populate_self=False)
 context._data['parent'] = lclcontext._data['local'] = ih.inherits
 callable_ = getattr(template.module, '_mako_inherit', None)
 if (callable_ is not None):
  ret = callable_(template, lclcontext)
  if ret:
   return ret
 gen_ns = getattr(template.module, '_mako_generate_namespaces', None)
 if (gen_ns is not None):
  gen_ns(context)
 return (template.callable_, lclcontext)

def _inherit_from ( context , uri , calling_uri ) : if ( uri is None ) : return None template = _lookup_template ( context , uri , calling_uri ) self_ns = context [ 'self' ] ih = self_ns while ( ih . inherits is not None ) : ih = ih . inherits lclcontext = context . _locals ( { 'next' : ih } ) ih . inherits = TemplateNamespace ( ( 'self:%s' % template . uri ) , lclcontext , template = template , populate_self = False ) context . _data [ 'parent' ] = lclcontext . _data [ 'local' ] = ih . inherits callable_ = getattr ( template . module , '_mako_inherit' , None ) if ( callable_ is not None ) : ret = callable_ ( template , lclcontext ) if ret : return ret gen_ns = getattr ( template . module , '_mako_generate_namespaces' , None ) if ( gen_ns is not None ) : gen_ns ( context ) return ( template . callable_ , lclcontext )
called by the _inherit method in template modules to set up the inheritance chain at the start of a templates execution .