Source code for zope.interface.common.interfaces

##############################################################################
#
# 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 zope.interface import Interface
from zope.interface import classImplements

[docs] class IException(Interface): "Interface for `Exception`"
classImplements(Exception, IException)
[docs] class IStandardError(IException): "Interface for `StandardError` (Python 2 only.)"
try: classImplements(StandardError, IStandardError) except NameError: #pragma NO COVER pass # StandardError does not exist in Python 3
[docs] class IWarning(IException): "Interface for `Warning`"
classImplements(Warning, IWarning)
[docs] class ISyntaxError(IStandardError): "Interface for `SyntaxError`"
classImplements(SyntaxError, ISyntaxError)
[docs] class ILookupError(IStandardError): "Interface for `LookupError`"
classImplements(LookupError, ILookupError)
[docs] class IValueError(IStandardError): "Interface for `ValueError`"
classImplements(ValueError, IValueError)
[docs] class IRuntimeError(IStandardError): "Interface for `RuntimeError`"
classImplements(RuntimeError, IRuntimeError)
[docs] class IArithmeticError(IStandardError): "Interface for `ArithmeticError`"
classImplements(ArithmeticError, IArithmeticError)
[docs] class IAssertionError(IStandardError): "Interface for `AssertionError`"
classImplements(AssertionError, IAssertionError)
[docs] class IAttributeError(IStandardError): "Interface for `AttributeError`"
classImplements(AttributeError, IAttributeError)
[docs] class IDeprecationWarning(IWarning): "Interface for `DeprecationWarning`"
classImplements(DeprecationWarning, IDeprecationWarning)
[docs] class IEOFError(IStandardError): "Interface for `EOFError`"
classImplements(EOFError, IEOFError)
[docs] class IEnvironmentError(IStandardError): "Interface for `EnvironmentError`"
classImplements(EnvironmentError, IEnvironmentError)
[docs] class IFloatingPointError(IArithmeticError): "Interface for `FloatingPointError`"
classImplements(FloatingPointError, IFloatingPointError)
[docs] class IIOError(IEnvironmentError): "Interface for `IOError`"
classImplements(IOError, IIOError)
[docs] class IImportError(IStandardError): "Interface for `ImportError`"
classImplements(ImportError, IImportError)
[docs] class IIndentationError(ISyntaxError): "Interface for `IndentationError`"
classImplements(IndentationError, IIndentationError)
[docs] class IIndexError(ILookupError): "Interface for `IndexError`"
classImplements(IndexError, IIndexError)
[docs] class IKeyError(ILookupError): "Interface for `KeyError`"
classImplements(KeyError, IKeyError)
[docs] class IKeyboardInterrupt(IStandardError): "Interface for `KeyboardInterrupt`"
classImplements(KeyboardInterrupt, IKeyboardInterrupt)
[docs] class IMemoryError(IStandardError): "Interface for `MemoryError`"
classImplements(MemoryError, IMemoryError)
[docs] class INameError(IStandardError): "Interface for `NameError`"
classImplements(NameError, INameError)
[docs] class INotImplementedError(IRuntimeError): "Interface for `NotImplementedError`"
classImplements(NotImplementedError, INotImplementedError)
[docs] class IOSError(IEnvironmentError): "Interface for `OSError`"
classImplements(OSError, IOSError)
[docs] class IOverflowError(IArithmeticError): "Interface for `ArithmeticError`"
classImplements(OverflowError, IOverflowError)
[docs] class IOverflowWarning(IWarning): """Deprecated, no standard class implements this. This was the interface for ``OverflowWarning`` prior to Python 2.5, but that class was removed for all versions after that. """
[docs] class IReferenceError(IStandardError): "Interface for `ReferenceError`"
classImplements(ReferenceError, IReferenceError)
[docs] class IRuntimeWarning(IWarning): "Interface for `RuntimeWarning`"
classImplements(RuntimeWarning, IRuntimeWarning)
[docs] class IStopIteration(IException): "Interface for `StopIteration`"
classImplements(StopIteration, IStopIteration)
[docs] class ISyntaxWarning(IWarning): "Interface for `SyntaxWarning`"
classImplements(SyntaxWarning, ISyntaxWarning)
[docs] class ISystemError(IStandardError): "Interface for `SystemError`"
classImplements(SystemError, ISystemError)
[docs] class ISystemExit(IException): "Interface for `SystemExit`"
classImplements(SystemExit, ISystemExit)
[docs] class ITabError(IIndentationError): "Interface for `TabError`"
classImplements(TabError, ITabError)
[docs] class ITypeError(IStandardError): "Interface for `TypeError`"
classImplements(TypeError, ITypeError)
[docs] class IUnboundLocalError(INameError): "Interface for `UnboundLocalError`"
classImplements(UnboundLocalError, IUnboundLocalError)
[docs] class IUnicodeError(IValueError): "Interface for `UnicodeError`"
classImplements(UnicodeError, IUnicodeError)
[docs] class IUserWarning(IWarning): "Interface for `UserWarning`"
classImplements(UserWarning, IUserWarning)
[docs] class IZeroDivisionError(IArithmeticError): "Interface for `ZeroDivisionError`"
classImplements(ZeroDivisionError, IZeroDivisionError)