diff options
author | Guido van Rossum <guido@python.org> | 1998-01-19 21:58:26 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1998-01-19 21:58:26 (GMT) |
commit | 758eec01728e41bce41ccc31ae96a856a4de6abc (patch) | |
tree | ecaa09debf7f8f683dae54fd4ad19df087429790 /Python/graminit.c | |
parent | 8095ebfc4a4ca613e294db8e512908c7a54e4ac9 (diff) | |
download | cpython-758eec01728e41bce41ccc31ae96a856a4de6abc.zip cpython-758eec01728e41bce41ccc31ae96a856a4de6abc.tar.gz cpython-758eec01728e41bce41ccc31ae96a856a4de6abc.tar.bz2 |
Rewritten PyImport_Cleanup() and its helper, clear_carefully(). They
now implement the following finalization strategy.
1. Whenever this code deletes a module, its directory is cleared
carefully, as follows:
- set all names to None that begin with exactly one underscore
- set all names to None that don't begin with two underscores
- clear the directory
2. Modules are deleted in the following order:
- modules with a reference count of 1, except __builtin__ or __sys__
- repeat until no more are found with a reference count of 1
- __main__ if it's still there
- all remaining modules except __builtin__ or sys
- sys
_ __builtin__
Diffstat (limited to 'Python/graminit.c')
0 files changed, 0 insertions, 0 deletions