Module superconfig.utilities.parser_utils
Expand source code
from typing import Union
from superconfig.parsers.env_parser import EnvParser
from superconfig.parsers.ini_parser import IniParser
from superconfig.parsers.json_parser import JsonParser
from superconfig.parsers.yaml_parser import YamlParser
def get_env_parser(env_prefix: str = "") -> EnvParser:
return EnvParser(env_prefix)
def get_file_parser(
path_to_file: str, **kwargs
) -> Union[IniParser, JsonParser, YamlParser]:
file_type = path_to_file.split(".")[-1]
if file_type == "ini":
return IniParser(path_to_file, **kwargs)
elif file_type == "json":
return JsonParser(path_to_file, **kwargs)
elif file_type == "yaml":
return YamlParser(path_to_file, **kwargs)
raise NotImplementedError(f"File type {file_type} not supported.")
Functions
def get_env_parser(env_prefix: str = '') ‑> EnvParser
-
Expand source code
def get_env_parser(env_prefix: str = "") -> EnvParser: return EnvParser(env_prefix)
def get_file_parser(path_to_file: str, **kwargs) ‑> Union[IniParser, JsonParser, YamlParser]
-
Expand source code
def get_file_parser( path_to_file: str, **kwargs ) -> Union[IniParser, JsonParser, YamlParser]: file_type = path_to_file.split(".")[-1] if file_type == "ini": return IniParser(path_to_file, **kwargs) elif file_type == "json": return JsonParser(path_to_file, **kwargs) elif file_type == "yaml": return YamlParser(path_to_file, **kwargs) raise NotImplementedError(f"File type {file_type} not supported.")