# AUTOGENERATED! DO NOT EDIT! File to edit: ../nbs/06_errs.ipynb.

# %% auto 0
__all__ = ['SignIntError']

# %% ../nbs/06_errs.ipynb 3
from typing import Any, Optional
from numbers import Number

# %% ../nbs/06_errs.ipynb 4
from .types import NumStr, SignSym, SignChr, SignInt, NumStrQ, SignIntQ, ExpoChr
from .guard import ispos, isneg, iszer, isnumstr, issignint
from .sign import sign, P, Z, N
from .cons import (BASE)
from sint.utils import (
    psyn, nsyn, zsyn, 
    any2signint, num2signint, str2signint, 
    numstr2signint, tosignint, matchsign, 
    toint, tochr, tosym, tosyn, toset, topow, tosign, totuple,

    from_bstr, from_estr, from_fstr, make_bstr, make_fstr, make_estr,
)

# %% ../nbs/06_errs.ipynb 6
class SignIntError(ValueError):
    def __init__(self, val: Any):
        msg = f'Invalid sint: {val}. Must be one of {P.int, Z.int, N.int}, a string integer, or {P.syn | Z.syn | N.syn}.'
        super().__init__(msg)
