is_module_invalid
FunctionPrivateSource
flag: bool = is_module_invalid(module: ModuleType)
Check whether a lazy module is invalid.
This function is designed for a specific reason. Because a lazy-loaded module is not loaded instantly, it may be possible that a lazy-loaded module is not installed. This function is mainly designed for verifying this case.
Arguments
Requires
Argument | Type | Required | |
---|---|---|---|
module | ModuleType | Can be a lazy module, a module or a module placeholder. |
Returns
Argument | Type | |
---|---|---|
flag | bool | True only when the given module is a module placeholder. |
Example
Load an optional module and verify that the module is not loaded
- Codes
- Results
Suppose that numpy
is not installed.
verify_a_module_placeholder.py
from typing import TYPE_CHECKING
from syncstream import utils
if TYPE_CHECKING:
import curses
else:
curses = utils.lazy_import(
"curses", package=None, dependencies=("numpy",), required=False
)
print(curses)
print(utils.is_module_invalid(curses))
print(curses)
<ModulePlaceholder curses>
True
<ModulePlaceholder curses>