jinja.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:SuperOcto 作者: mcecchi 项目源码 文件源码
def parse(self, parser):
        token = next(parser.stream)
        lineno = token.lineno
        filename = parser.name
        error = parser.parse_expression()

        args = [error, nodes.Const(filename), nodes.Const(lineno)]
        try:
            body = parser.parse_statements(["name:endtry"], drop_needle=True)
            node = nodes.CallBlock(self.call_method("_handle_body", args),
                                   [], [], body).set_lineno(lineno)
        except Exception as e:
            # that was expected
            self._logger.exception("Caught exception while parsing template")
            node = nodes.CallBlock(self.call_method("_handle_error", [nodes.Const(self._format_error(error, e, filename, lineno))]),
                                   [], [], []).set_lineno(lineno)

        return node
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号