Mercurial > public > mercurial-scm > hg
view mercurial/thirdparty/zope/interface/common/interfaces.py @ 37178:68ee61822182
thirdparty: port zope.interface to relative imports
By using relative imports, we're guaranteed to get modules
vendored with Mercurial rather than other random modules
that might be in sys.path.
My editor strips trailing whitespace on save. So some minor
source code cleanup was also performed as part of this commit.
# no-check-commit because some modified lines have double newlines
Differential Revision: https://phab.mercurial-scm.org/D2930
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 21 Mar 2018 19:52:30 -0700 |
parents | 943d77fc07a3 |
children |
line wrap: on
line source
############################################################################## # # Copyright (c) 2003 Zope Foundation and Contributors. # All Rights Reserved. # # This software is subject to the provisions of the Zope Public License, # Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution. # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS # FOR A PARTICULAR PURPOSE. # ############################################################################## """Interfaces for standard python exceptions """ from __future__ import absolute_import from .. import Interface from .. import classImplements class IException(Interface): pass class IStandardError(IException): pass class IWarning(IException): pass class ISyntaxError(IStandardError): pass class ILookupError(IStandardError): pass class IValueError(IStandardError): pass class IRuntimeError(IStandardError): pass class IArithmeticError(IStandardError): pass class IAssertionError(IStandardError): pass class IAttributeError(IStandardError): pass class IDeprecationWarning(IWarning): pass class IEOFError(IStandardError): pass class IEnvironmentError(IStandardError): pass class IFloatingPointError(IArithmeticError): pass class IIOError(IEnvironmentError): pass class IImportError(IStandardError): pass class IIndentationError(ISyntaxError): pass class IIndexError(ILookupError): pass class IKeyError(ILookupError): pass class IKeyboardInterrupt(IStandardError): pass class IMemoryError(IStandardError): pass class INameError(IStandardError): pass class INotImplementedError(IRuntimeError): pass class IOSError(IEnvironmentError): pass class IOverflowError(IArithmeticError): pass class IOverflowWarning(IWarning): pass class IReferenceError(IStandardError): pass class IRuntimeWarning(IWarning): pass class IStopIteration(IException): pass class ISyntaxWarning(IWarning): pass class ISystemError(IStandardError): pass class ISystemExit(IException): pass class ITabError(IIndentationError): pass class ITypeError(IStandardError): pass class IUnboundLocalError(INameError): pass class IUnicodeError(IValueError): pass class IUserWarning(IWarning): pass class IZeroDivisionError(IArithmeticError): pass classImplements(ArithmeticError, IArithmeticError) classImplements(AssertionError, IAssertionError) classImplements(AttributeError, IAttributeError) classImplements(DeprecationWarning, IDeprecationWarning) classImplements(EnvironmentError, IEnvironmentError) classImplements(EOFError, IEOFError) classImplements(Exception, IException) classImplements(FloatingPointError, IFloatingPointError) classImplements(ImportError, IImportError) classImplements(IndentationError, IIndentationError) classImplements(IndexError, IIndexError) classImplements(IOError, IIOError) classImplements(KeyboardInterrupt, IKeyboardInterrupt) classImplements(KeyError, IKeyError) classImplements(LookupError, ILookupError) classImplements(MemoryError, IMemoryError) classImplements(NameError, INameError) classImplements(NotImplementedError, INotImplementedError) classImplements(OSError, IOSError) classImplements(OverflowError, IOverflowError) try: classImplements(OverflowWarning, IOverflowWarning) except NameError: #pragma NO COVER pass # OverflowWarning was removed in Python 2.5 classImplements(ReferenceError, IReferenceError) classImplements(RuntimeError, IRuntimeError) classImplements(RuntimeWarning, IRuntimeWarning) try: classImplements(StandardError, IStandardError) except NameError: #pragma NO COVER pass # StandardError does not exist in Python 3 classImplements(StopIteration, IStopIteration) classImplements(SyntaxError, ISyntaxError) classImplements(SyntaxWarning, ISyntaxWarning) classImplements(SystemError, ISystemError) classImplements(SystemExit, ISystemExit) classImplements(TabError, ITabError) classImplements(TypeError, ITypeError) classImplements(UnboundLocalError, IUnboundLocalError) classImplements(UnicodeError, IUnicodeError) classImplements(UserWarning, IUserWarning) classImplements(ValueError, IValueError) classImplements(Warning, IWarning) classImplements(ZeroDivisionError, IZeroDivisionError)