Python/pyimport/utils

Source   Edit  

Procs

proc import_add_module(name: PyStrObject): PyModuleObject {....raises: [],
    tags: [RootEffect], forbids: [].}

import.c:import_add_module

Get the module object corresponding to a module name. First check the modules dictionary if there's one there, if not, create a new one and insert it in the modules dictionary.

Source   Edit  
proc import_add_module(name: PyStrObject; alreadyIn: var bool): PyModuleObject {.
    ...raises: [], tags: [RootEffect], forbids: [].}
alreadIn is a out param Source   Edit  
proc PyImport_AddModuleRef(name: PyStrObject): PyObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc PyImport_AddModuleRef(name: string): PyObject {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc PyImport_GetModule(name: PyStrObject; res: var PyObject): PyBaseErrorObject {.
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc PyModuleSpec_IsInitializing(spec: PyObject; res: var bool): PyBaseErrorObject {.
    ...raises: [], tags: [RootEffect], forbids: [].}
Check if the "_initializing" attribute of the module spec is set to true. Source   Edit