Source code for banff

from importlib.metadata import version

import banff._log as logging
import banff.nls
from banff._log import log_levels as log_level  # expose log levels as `log_level`, refer to like `banff.log_level.INFO`
from banff.io_util import (
    get_default_output_spec,
    set_default_output_spec,
)
from banff.nls import (
    SupportedLanguage,  # `SupportedLanguage` for user reference
    _,  # expose `_()` for local internal use
)
from banff.proc import (
    determin,
    donorimp,
    editstat,
    errorloc,
    estimato,
    massimpu,
    outlier,
    prorate,
    verifyed,
)

# get version from package metadata
__version__ = version("banff")

lg = logging  # alias for logging

# Initialize Native Language Support (bilingual messages)
banff.nls.set_language()

# Define method of modifying language (affects both Python and C)
[docs] def set_language(new_lang=None): """Set the languaged used for console log messages. For `new_lang`, specify a value from `banff.SupportedLanguage`. """ banff.nls.set_language(lang=new_lang) banff.proc.BanffProcedure._reload_all_procs(lang=banff.nls.get_language()) # noqa: SLF001
# Initialize top level logger log_lcl = lg.init_top_level(logger_name="banff") log_lcl.info(_("Importing Banff package version {}").format(__version__)) # additional procedure aliases deterministic = determin editstats = editstat estimator = estimato massimp = massimpu verifyedits = verifyed banff.proc.BanffProcedure._load_all_procs(lang=banff.nls.get_language()) # noqa: SLF001 log_lcl.info(_("Banff package imported")) __all__ = [ "SupportedLanguage", # ?for user reference? "determin", "deterministic", "donorimp", "editstat", "editstats", "errorloc", "estimato", "estimator", "get_default_output_spec", "log_level", # for user reference "massimp", "massimpu", "outlier", "prorate", "set_default_output_spec", "set_language", "verifyed", "verifyedits", ]