jinja2.nodes.Node

class jinja2.nodes.Node(*fields, **attributes)[source]

Baseclass for all Jinja2 nodes. There are a number of nodes available of different types. There are four major types:

All nodes have fields and attributes. Fields may be other nodes, lists, or arbitrary values. Fields are passed to the constructor as regular positional arguments, attributes as keyword arguments. Each node has two attributes: lineno (the line number of the node) and environment. The environment attribute is set at the end of the parsing process for all nodes automatically.

Methods

__init__(*fields, **attributes)
find(node_type) Find the first node of a given type.
find_all(node_type) Find all the nodes of a given type.
iter_child_nodes([exclude, only]) Iterates over all direct child nodes of the node.
iter_fields([exclude, only]) This method iterates over all fields that are defined and yields (key, value) tuples.
set_ctx(ctx) Reset the context of a node and all child nodes.
set_environment(environment) Set the environment for all nodes.
set_lineno(lineno[, override]) Set the line numbers of the node and children.