nodes have access to environment now
--HG--
branch : trunk
diff --git a/jinja2/parser.py b/jinja2/parser.py
index 426e554..a7f0e98 100644
--- a/jinja2/parser.py
+++ b/jinja2/parser.py
@@ -23,8 +23,7 @@
class Parser(object):
- """
- The template parser class.
+ """The template parser class.
Transforms sourcecode into an abstract syntax tree.
"""
@@ -572,7 +571,6 @@
def parse_filter(self, node):
lineno = self.stream.current.type
- filters = []
while self.stream.current.type == 'pipe':
self.stream.next()
token = self.stream.expect('name')
@@ -582,10 +580,9 @@
args = []
kwargs = []
dyn_args = dyn_kwargs = None
- filters.append(nodes.FilterCall(token.value, args, kwargs,
- dyn_args, dyn_kwargs,
- lineno=token.lineno))
- return nodes.Filter(node, filters)
+ node = nodes.Filter(node, token.value, args, kwargs, dyn_args,
+ dyn_kwargs, lineno=token.lineno)
+ return node
def parse_test(self, node):
token = self.stream.expect('is')
@@ -653,4 +650,6 @@
def parse(self):
"""Parse the whole template into a `Template` node."""
- return nodes.Template(self.subparse(), lineno=1)
+ result = nodes.Template(self.subparse(), lineno=1)
+ result.set_environment(self.environment)
+ return result