mirror of
https://github.com/LCPQ/QUESTDB_website.git
synced 2024-12-28 15:16:00 +01:00
24 lines
1018 B
Python
24 lines
1018 B
Python
from inspect import isclass
|
|
from pkgutil import iter_modules
|
|
from pathlib import Path
|
|
from importlib import import_module
|
|
from ..formatHandlerBase import formatHandlerBase
|
|
|
|
# iterate through the modules in the current package
|
|
package_dir = Path(__file__).resolve().parent
|
|
for (_, module_name, _) in iter_modules([package_dir]):
|
|
|
|
# import the module and iterate through its attributes
|
|
module = import_module(f"{__name__}.{module_name}")
|
|
|
|
# iterate through the modules in the current package
|
|
package_dir = Path(__file__).resolve().parent
|
|
for (_, module_name, _) in iter_modules([package_dir]):
|
|
|
|
# import the module and iterate through its attributes
|
|
module = import_module(f"{__name__}.{module_name}")
|
|
for attribute_name in dir(module):
|
|
attribute = getattr(module, attribute_name)
|
|
# if it's a format handler import it
|
|
if isclass(attribute) and issubclass(attribute, formatHandlerBase) and hasattr(attribute, '__formatName__'):
|
|
globals()[attribute_name] = attribute |