liquid.BoundTemplate
A liquid template that has been parsed and is bound to a liquid.Environment.
You probably don't want to instantiate BoundTemplate directly. Use liquid.Environment.from_string() or liquid.Environment.get_template() instead.
BoundTemplate
class BoundTemplate(env, parse_tree, [options])
Parameters:
-
env: liquid.Environment- The environment this template is bound to. -
parse_tree: liquid.ast.ParseTree- The parse tree representing this template. -
name: str- Optional name of the template. Defaults to an empty string. -
path: Optional[Union[str, Path]]- Optional origin path or identifier for the template. -
globals: Optional[Dict[str, object]]- An optional mapping of context variables made available every time the resulting template is rendered. Defaults toNone. -
matter: Optional[Mapping[str, object]]- Optional mapping containing variables associated with the template. Could be "front matter" or other meta data. -
uptodate: Optional[Callable[[], bool]]- Optional callable that will returnTrueif the template is up to date, orFalseif it needs to be reloaded. Defaults toNone.
Properties
name
The template's name. As it would been passed to liquid.Environment.get_template().
Type: str
globals
A dictionary of context variables made available every time this template is rendered.
Type: Dict[str, object]
matter
Similar to globals, a dictionary of context variables made available every time this template is rendered. globals is usually passed down from the environment, matter usually originates from a template loader. They are kept separate so subclasses can choose how to merge them.
Type: Mapping[str, object]
is_up_to_date
True if the template is up to date, False otherwise.
Type: bool
Methods
analyze
analyze(follow_partials, raise_for_failures)
Statically analyze the template and any included/rendered templates.
Parameters:
-
follow_partials: bool- IfTrue, we will try to load partial templates and analyze those templates too. Default's toTrue. -
raise_for_failures: bool- IfTrue, will raise an exception if anast.Nodeorexpression.Expressiondoes not define achildren()method, or if a partial template can not be loaded. WhenFalse, no exception is raised and a mapping of failed nodes and expressions is available as thefailed_visitsproperty. A mapping of unloadable partial templates is stored in theunloadable_partialsproperty.
Returns: An object containing analysis results.
Return Type: liquid.template.TemplateAnalysis
analyze_async
async analyze_async(follow_partials, raise_for_failures)
Statically analyze the template and any included/rendered templates.
Parameters:
-
follow_partials: bool- IfTrue, we will try to load partial templates and analyze those templates too. Default's toTrue. -
raise_for_failures: bool- IfTrue, will raise an exception if anast.Nodeorexpression.Expressiondoes not define achildren()method, or if a partial template can not be loaded. WhenFalse, no exception is raised and a mapping of failed nodes and expressions is available as thefailed_visitsproperty. A mapping of unloadable partial templates is stored in theunloadable_partialsproperty.
Returns: An object containing analysis results.
Return Type: liquid.template.TemplateAnalysis
analyze_with_context
analyze_with_context(*args, **kwargs)
Analyze a path through this template's syntax tree given some context data. Accepts the same arguments as render.
Returns: Contextual analysis results
Return Type: liquid.template.ContextualTemplateAnalysis
analyze_with_context_async
async analyze_with_context_async(*args, **kwargs)
Analyze a path through this template's syntax tree given some context data. Accepts the same arguments as render.
Returns: Contextual analysis results
Return Type: liquid.template.ContextualTemplateAnalysis
render
render(*args, **kwargs) -> str
Render the template with args and kwargs included in the render context. Accepts the same arguments as dict().
Returns: The rendered template as a string.
Return Type: str
render_async
async render_async(*args, **kwargs) -> str
An async version of liquid.BoundTemplate.render()
Returns: The rendered template as a string.
Return Type: str
render_with_context
render_with_context(context, buffer, *args, **kwargs) -> None
Render the template using an existing liquid.Context and output buffer. args and kwargs are passed to dict(). The resulting dictionary is added to the render context.
Parameters:
-
context: liquid.Context- A render context. -
buffer: TextIO- File-like object to which rendered text is written.
Return Type: None
render_with_context_async
async render_with_context_async(context, buffer, *args, **kwargs) -> None
An async version of liquid.BoundTemplate.render_with_context()
Return Type: None
is_up_to_date_async
async is_up_to_date_async() -> bool
Return True if the template is up to date, False otherwise.