Mercurial > public > mercurial-scm > hg-stable
view mercurial/error.py @ 7633:08cabecfa8a8
errors: move revlog errors
- create error.py for exception classes to reduce demandloading
- move revlog exceptions to it
- change users to import error and drop revlog import if possible
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 11 Jan 2009 22:48:28 -0600 |
parents | |
children | e3f8c6d6b72e |
line wrap: on
line source
""" error.py - Mercurial exceptions This allows us to catch exceptions at higher levels without forcing imports Copyright 2005-2008 Matt Mackall <mpm@selenic.com> This software may be used and distributed according to the terms of the GNU General Public License, incorporated herein by reference. """ # Do not import anything here, please class RevlogError(Exception): pass class LookupError(RevlogError, KeyError): def __init__(self, name, index, message): self.name = name if isinstance(name, str) and len(name) == 20: from node import short name = short(name) RevlogError.__init__(self, '%s@%s: %s' % (index, name, message)) def __str__(self): return RevlogError.__str__(self)