@@ -31,9 +31,21 @@ class Error(Exception):
source=self.source,
)
def _fill_source(self, source, filename='conservancy_beancount', lineno=0):
source.setdefault('filename', filename)
source.setdefault('lineno', lineno)
Iter = Iterable[Error]
class ConfigurationError(Error):
def __init__(self, message, entry=None, source=None):
if source is None:
source = {}
self._fill_source(source)
super().__init__(message, entry, source)
class InvalidMetadataError(Error):
def __init__(self, txn, post, key, value=None, source=None):
if value is None: