Skip to content

Reflection Importing

Dynamic import utilities.

Importing Module

Dynamic import utilities.

This submodule provides utilities for dynamically importing classes, functions, and modules at runtime.

Examples

from rite.reflection.importing import ( ... importing_load_class, ... importing_load_module ... ) importing_load_class("collections.OrderedDict")

Classes

ClassImportError

Bases: ImportError

Raised when class cannot be dynamically imported.

Modules

importing_load_class

Class Importer

Dynamically load class from module path.

Examples

from rite.reflection.importing import importing_load_class OrderedDict = importing_load_class("collections.OrderedDict") isinstance(OrderedDict(), dict) True

Classes

ClassImportError

Bases: ImportError

Raised when class cannot be dynamically imported.

Functions

importing_load_class(path: str) -> type

Dynamically load class from module path.

Parameters:

Name Type Description Default
path str

Fully qualified path (e.g., "module.Class").

required

Returns:

Type Description
type

Loaded class object.

Raises:

Type Description
ClassImportError

If module or class cannot be imported.

Examples:

>>> importing_load_class("collections.OrderedDict")
<class 'collections.OrderedDict'>
>>> importing_load_class("pathlib.Path")
<class 'pathlib.Path'>
Notes

Path format: "module.submodule.ClassName".

importing_load_function

Function Importer

Dynamically load function from module path.

Examples

from rite.reflection.importing import importing_load_function dumps = importing_load_function("json.dumps") dumps({"key": "value"}) '{"key": "value"}'

Functions

importing_load_function(path: str) -> Callable

Dynamically load function from module path.

Parameters:

Name Type Description Default
path str

Fully qualified path (e.g., "module.function").

required

Returns:

Type Description
Callable

Loaded function object.

Raises:

Type Description
ImportError

If module cannot be imported.

AttributeError

If function not found.

Examples:

>>> importing_load_function("json.dumps")
<function dumps at 0x...>
>>> importing_load_function("os.path.join")
<function join at 0x...>
Notes

Path format: "module.submodule.function_name".

importing_load_module

Module Importer

Dynamically import module by name.

Examples

from rite.reflection.importing import importing_load_module json_module = importing_load_module("json") json_module.dumps({"key": "value"}) '{"key": "value"}'

Functions

importing_load_module(name: str) -> ModuleType

Dynamically import module by name.

Parameters:

Name Type Description Default
name str

Module name (e.g., "json", "os.path").

required

Returns:

Type Description
ModuleType

Imported module object.

Raises:

Type Description
ModuleNotFoundError

If module cannot be imported.

Examples:

>>> importing_load_module("json")
<module 'json' from '...'>
>>> importing_load_module("os.path")
<module 'posixpath' from '...'>
Notes

Uses importlib.import_module.

options: show_root_heading: true show_source: false heading_level: 2