Source code for coalib.bearlib.aspects.exceptions

[docs]class AspectTypeError(TypeError): """ This error is raised when an object is not an ``aspectclass`` or an instance of ``aspectclass`` """ def __init__(self, item): self.item = item message = ('{} is not an aspectclass or an instance of an ' 'aspectclass'.format(repr(self.item))) super().__init__(message)
[docs]class AspectLookupError(LookupError): """ Error raised when trying to search aspect. """ def __init__(self, aspectname, message=None): self.aspectname = aspectname if message is None: message = ('Error when trying to search aspect named {}' .format(repr(aspectname))) super().__init__(message)
[docs]class AspectNotFoundError(AspectLookupError): """ No aspect found. """ def __init__(self, aspectname): message = ('No aspect named {}'.format(repr(aspectname))) super().__init__(aspectname, message)
[docs]class MultipleAspectFoundError(AspectLookupError): """ Multiple aspect are found. """ def __init__(self, aspectname, other_aspects): self.other_aspects = other_aspects message = ('Multiple aspects named {}. Choose from {}'.format( repr(aspectname), repr(sorted(other_aspects, key=lambda a: a.__qualname__)))) super().__init__(aspectname, message)