Source code for bag.exceptions
"""Nice exception classes."""
from typing import Any
[docs]class ArgumentError(ValueError):
"""Use this exception to complain that ``arg`` doesn't accept ``val``."""
def __init__(self, arg: str, val: Any) -> None:
"""Instantiate error from the parameter name and the wrong value.
More useful than ValueError, whose argument is an error string.
"""
self.arg = arg
self.val = val
val = str(val)
if len(val) > 43:
val = val[:40] + "..."
super(ArgumentError, self).__init__(
'Argument "{0}" does not accept value "{1}"'.format(arg, val)
)