[Python-Dev] Hook Extension Module Import?
David Abrahams
dave@boost-consulting.com
Sun, 20 Apr 2003 13:41:41 -0400
Aahz <aahz@pythoncraft.com> writes:
> On Sun, Apr 20, 2003, David Abrahams wrote:
>> Aahz <aahz@pythoncraft.com> writes:
>>> On Sun, Apr 20, 2003, David Abrahams wrote:
>>>>
>>>> I think I need a way to temporarily (from 'C'), arrange to be notified
>>>> just before and just after a new extension module is loaded. Is this
>>>> possible? I didn't see anything obvious in the source. BTW, I'd be
>>>> just as happy if it were possible to do the same thing for any module
>>>> (i.e., not discriminating between extension and pure python modules).
>>>
>>> http://www.python.org/peps/pep-0302.html
>>
>> I guess I should take that to mean "you can't do that yet" (?)
>
> As the PEP says, you *could* define an __import__ hook, but that would
> likely be more effort than you want.
It also says:
The situation gets worse when you need to extend the import
mechanism from C: it's currently impossible, apart from hacking
Python's import.c or reimplementing much of import.c from scratch.
OTOH, it's not obvious to me why this should be so. Can't I
access/replace builtins.__import__ from C/C++?
That said, if I could do that, it doesn't seem like much trouble at
all to get the behavior I want.
--
Dave Abrahams
Boost Consulting
www.boost-consulting.com