Source code for openfisca_core.errors.empty_argument_error

import typing

import os
import traceback

import numpy


[docs] class EmptyArgumentError(IndexError): """Exception raised when a method is called with an empty argument.""" message: str def __init__( self, class_name: str, method_name: str, arg_name: str, arg_value: typing.Union[list, numpy.ndarray], ) -> None: message = [ f"'{class_name}.{method_name}' can't be run with an empty '{arg_name}':\n", f">>> {arg_name}", f"{arg_value}\n", "Here are some hints to help you get this working:\n", f"- Check that '{class_name}' isn't empty (see '{class_name}.add_bracket')", f"- Check that '{arg_name}' is being properly assigned " f"('{arg_name}' should be a non empty '{type(arg_value).__name__}')\n", "For further support, please do not hesitate to:\n", "- Take a look at the official documentation https://openfisca.org/doc", "- Open an issue on https://github.com/openfisca/openfisca-core/issues/new", "- Mention us via https://twitter.com/openfisca", "- Drop us a line to contact@openfisca.org\n", "😃", ] stacktrace = os.linesep.join(traceback.format_stack()) self.message = os.linesep.join([f" {line}" for line in message]) self.message = os.linesep.join([stacktrace, self.message]) super().__init__(self.message)