diff options
| author | Guido van Rossum <guido@python.org> | 1998-10-12 15:23:04 +0000 | 
|---|---|---|
| committer | Guido van Rossum <guido@python.org> | 1998-10-12 15:23:04 +0000 | 
| commit | 06884363055a9d45daa1e5924aadba442e3d0a40 (patch) | |
| tree | 998764b048097db8704a352775513a01e94bd8cd | |
| parent | 7a840e8d5036bbdb29785659731edadb666ece99 (diff) | |
| download | cpython-git-06884363055a9d45daa1e5924aadba442e3d0a40.tar.gz | |
Enhancements by Sjoerd Mullender: support for
	from a.b import c
	import a . b
| -rw-r--r-- | Lib/pyclbr.py | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/Lib/pyclbr.py b/Lib/pyclbr.py index cb4125f860..6af4692074 100644 --- a/Lib/pyclbr.py +++ b/Lib/pyclbr.py @@ -38,12 +38,12 @@ import imp  import re  import string -id = '(?P<id>[A-Za-z_][A-Za-z0-9_]*)'	# match identifier +id = '[A-Za-z_][A-Za-z0-9_]*'	# match identifier  blank_line = re.compile('^[ \t]*($|#)') -is_class = re.compile('^class[ \t]+'+id+'[ \t]*(?P<sup>\([^)]*\))?[ \t]*:') -is_method = re.compile('^[ \t]+def[ \t]+'+id+'[ \t]*\(') +is_class = re.compile('^class[ \t]+(?P<id>'+id+')[ \t]*(?P<sup>\([^)]*\))?[ \t]*:') +is_method = re.compile('^[ \t]+def[ \t]+(?P<id>'+id+')[ \t]*\(')  is_import = re.compile('^import[ \t]*(?P<imp>[^#]+)') -is_from = re.compile('^from[ \t]+'+id+'[ \t]+import[ \t]+(?P<imp>[^#]+)') +is_from = re.compile('^from[ \t]+(?P<module>'+id+'([ \t]*\\.[ \t]*'+id+')*)[ \t]+import[ \t]+(?P<imp>[^#]+)')  dedent = re.compile('^[^ \t]')  indent = re.compile('^[^ \t]*') @@ -75,8 +75,8 @@ def readmodule(module, path=[], inpackage=0):  	i = string.rfind(module, '.')  	if i >= 0:  		# Dotted module name -		package = module[:i] -		submodule = module[i+1:] +		package = string.strip(module[:i]) +		submodule = string.strip(module[i+1:])  		parent = readmodule(package, path, inpackage)  		child = readmodule(submodule, parent['__path__'], 1)  		return child @@ -146,7 +146,7 @@ def readmodule(module, path=[], inpackage=0):  		res = is_from.match(line)  		if res:  			# from module import stuff -			mod = res.group('id') +			mod = res.group('module')  			names = string.splitfields(res.group('imp'), ',')  			try:  				# recursively read the imported module  | 
