Coverage for src/configuraptor/loaders/__init__.py: 100%
8 statements
« prev ^ index » next coverage.py v7.2.7, created at 2023-07-21 10:22 +0200
« prev ^ index » next coverage.py v7.2.7, created at 2023-07-21 10:22 +0200
1"""
2Loads loaders based on Python version.
3"""
5# tomli used for every Python version now.
6from .loaders_shared import dotenv, ini, json, toml, yaml
7from .register import LOADERS, T_loader, register_loader
10def get(extension: str) -> T_loader:
11 """
12 Get the right loader for a specific extension.
13 """
14 extension = extension.removeprefix(".")
16 if loader := LOADERS.get(extension):
17 return loader
18 else:
19 raise ValueError(f"Invalid extension {extension}")
22__all__ = ["get", "toml", "json", "yaml", "dotenv", "ini", "register_loader"]