Mercurial > piecrust2
diff piecrust/templating/base.py @ 128:28444014ce7d
Fix error reporting and counting of lines.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Fri, 14 Nov 2014 22:49:50 +0100 |
parents | f485ba500df3 |
children | 96d363e2da4b |
line wrap: on
line diff
--- a/piecrust/templating/base.py Fri Nov 14 22:47:18 2014 +0100 +++ b/piecrust/templating/base.py Fri Nov 14 22:49:50 2014 +0100 @@ -4,6 +4,23 @@ pass +class TemplatingError(Exception): + def __init__(self, message, filename=None, lineno=-1): + super(TemplatingError, self).__init__() + self.message = message + self.filename = filename + self.lineno = lineno + + def __str__(self): + msg = '' + if self.filename: + msg += self.filename + if self.lineno >= 0: + msg += ', line %d' % self.lineno + msg += ': ' + self.message + return msg + + class TemplateEngine(object): EXTENSIONS = []