diff options
author | Guido van Rossum <guido@python.org> | 2002-09-16 16:36:02 +0000 |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2002-09-16 16:36:02 +0000 |
commit | 0aba177c7a825e74ae00e985932f8491f5545362 (patch) | |
tree | f96a8fdb91d6b2cf93da3a1ecb2f91a5e2f058e7 /Lib/pyclbr.py | |
parent | 4184d9c021c54cf7d0b5833386b5400ff9db4bfa (diff) | |
download | cpython-0aba177c7a825e74ae00e985932f8491f5545362.tar.gz |
When recursively attempting to find the modules imported by an
"import" statement, catch and ignore all exceptions. add/fix some
comments about this.
Diffstat (limited to 'Lib/pyclbr.py')
-rw-r--r-- | Lib/pyclbr.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Lib/pyclbr.py b/Lib/pyclbr.py index 1901a82be3..fe34208dd6 100644 --- a/Lib/pyclbr.py +++ b/Lib/pyclbr.py @@ -219,16 +219,24 @@ def readmodule_ex(module, path=[], inpackage=False): elif token == 'import' and start[1] == 0: modules = _getnamelist(g) for mod, mod2 in modules: - readmodule_ex(mod, path, inpackage) + try: + # Recursively read the imported module + readmodule_ex(mod, path, inpackage) + except: + # If we can't find or parse the imported module, + # too bad -- don't die here. + pass elif token == 'from' and start[1] == 0: mod, token = _getname(g) if not mod or token != "import": continue names = _getnamelist(g) try: - # recursively read the imported module + # Recursively read the imported module d = readmodule_ex(mod, path, inpackage) except: + # If we can't find or parse the imported module, + # too bad -- don't die here. continue # add any classes that were defined in the imported module # to our name space if they were mentioned in the list |