oohEmbed/app/jinja/exceptions.py
2009-07-18 11:32:16 +08:00

91 lines
1.9 KiB
Python

# -*- coding: utf-8 -*-
"""
jinja.exceptions
~~~~~~~~~~~~~~~~
Jinja exceptions.
:copyright: 2007 by Armin Ronacher.
:license: BSD, see LICENSE for more details.
"""
class TemplateError(RuntimeError):
pass
class SecurityException(TemplateError):
"""
Raise if the template designer tried to do something dangerous.
"""
class FilterNotFound(KeyError, TemplateError):
"""
Raised if a filter does not exist.
"""
def __init__(self, message):
KeyError.__init__(self, message)
class FilterArgumentError(TypeError, TemplateError):
"""
An argument passed to the filter was invalid.
"""
def __init__(self, message):
TypeError.__init__(self, message)
class TestNotFound(KeyError, TemplateError):
"""
Raised if a test does not exist.
"""
def __init__(self, message):
KeyError.__init__(self, message)
class TestArgumentError(TypeError, TemplateError):
"""
An argument passed to a test function was invalid.
"""
def __init__(self, message):
TypeError.__init__(self, message)
class TemplateNotFound(IOError, TemplateError):
"""
Raised if a template does not exist.
"""
def __init__(self, name):
IOError.__init__(self, name)
self.name = name
class TemplateSyntaxError(SyntaxError, TemplateError):
"""
Raised to tell the user that there is a problem with the template.
"""
def __init__(self, message, lineno, filename):
SyntaxError.__init__(self, message)
self.lineno = lineno
self.filename = filename
class TemplateRuntimeError(TemplateError):
"""
Raised by the template engine if a tag encountered an error when
rendering.
"""
class TemplateIncludeError(TemplateError):
"""
Raised by the `ControlledLoader` if recursive includes where
detected.
"""