comparison markup/template.py @ 213:bafa1cc49c2f

Store original message in exceptions as `msg` ivar.
author cmlenz
date Thu, 31 Aug 2006 08:49:37 +0000
parents c0c70dc5bf95
children 813b7115d27f
comparison
equal deleted inserted replaced
212:e8c43127d9a9 213:bafa1cc49c2f
43 error.""" 43 error."""
44 44
45 def __init__(self, message, filename='<string>', lineno=-1, offset=-1): 45 def __init__(self, message, filename='<string>', lineno=-1, offset=-1):
46 if isinstance(message, SyntaxError) and message.lineno is not None: 46 if isinstance(message, SyntaxError) and message.lineno is not None:
47 message = str(message).replace(' (line %d)' % message.lineno, '') 47 message = str(message).replace(' (line %d)' % message.lineno, '')
48 message = '%s (%s, line %d)' % (message, filename, lineno) 48 self.msg = message
49 message = '%s (%s, line %d)' % (self.msg, filename, lineno)
49 TemplateError.__init__(self, message) 50 TemplateError.__init__(self, message)
50 self.filename = filename 51 self.filename = filename
51 self.lineno = lineno 52 self.lineno = lineno
52 self.offset = offset 53 self.offset = offset
53 54
59 An unknown directive is any attribute using the namespace for directives, 60 An unknown directive is any attribute using the namespace for directives,
60 with a local name that doesn't match any registered directive. 61 with a local name that doesn't match any registered directive.
61 """ 62 """
62 63
63 def __init__(self, name, filename='<string>', lineno=-1): 64 def __init__(self, name, filename='<string>', lineno=-1):
64 msg = 'bad directive "%s"' % name.localname 65 message = 'bad directive "%s"' % name.localname
65 TemplateSyntaxError.__init__(self, msg, filename, lineno) 66 TemplateSyntaxError.__init__(self, message, filename, lineno)
66 67
67 68
68 class TemplateNotFound(TemplateError): 69 class TemplateNotFound(TemplateError):
69 """Exception raised when a specific template file could not be found.""" 70 """Exception raised when a specific template file could not be found."""
70 71
Copyright (C) 2012-2017 Edgewall Software