# AUTOGENERATED! DO NOT EDIT! File to edit: ../nbs/01_cons.ipynb.

# %% auto 0
__all__ = ['WRAPS_ASSIGN_ANNDOCS', 'LOG_SAFTEY', 'WORDS_TO_SNAKE_WITH_UPPERCASE']

# %% ../nbs/01_cons.ipynb 6
import re

# %% ../nbs/01_cons.ipynb 8
#| export

# %% ../nbs/01_cons.ipynb 10
#| export


# %% ../nbs/01_cons.ipynb 12
from nlit import SEEDED
from nlit import (__DOC__, __MODULE__, __ANNOTATIONS__)
from uscr import private

# %% ../nbs/01_cons.ipynb 14
#| export


# %% ../nbs/01_cons.ipynb 17
_SEEDED = private(SEEDED)
'''The private version of the `SEEDED` variable. 
It is used to indicate if a seed function has been used to set the random seed 
to prevent the random number generator from being reseeded.''';

# %% ../nbs/01_cons.ipynb 18
WRAPS_ASSIGN_ANNDOCS = (__DOC__, __MODULE__, __ANNOTATIONS__)

# %% ../nbs/01_cons.ipynb 20
LOG_SAFTEY = 1e-8

# %% ../nbs/01_cons.ipynb 22
WORDS_TO_SNAKE_WITH_UPPERCASE = re.compile(
    r'[A-Z]?[a-z]+'                     # A possible uppercase followed by lowercase letters
    r'|[A-Z]{2,}(?=[A-Z][a-z]|\d|\W|$)' # Two or more consecutive uppercase letters
    r'|\d+'                             # One or more digits
    r'|[A-Z]{2,}'                       # Two or more consecutive uppercase letters
    r'|[A-Z]$'                          # Uppercase letter at end of string
)

# %% ../nbs/01_cons.ipynb 24
#| export
