From: <md...@us...> - 2007-08-28 20:29:39
|
Revision: 3749 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=3749&view=rev Author: mdboom Date: 2007-08-28 13:29:37 -0700 (Tue, 28 Aug 2007) Log Message: ----------- Sped up get_valid_values to improve startup time. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/artist.py Modified: trunk/matplotlib/lib/matplotlib/artist.py =================================================================== --- trunk/matplotlib/lib/matplotlib/artist.py 2007-08-28 20:28:46 UTC (rev 3748) +++ trunk/matplotlib/lib/matplotlib/artist.py 2007-08-28 20:29:37 UTC (rev 3749) @@ -1,5 +1,5 @@ from __future__ import division -import sys +import sys, re from cbook import iterable, flatten from transforms import identity_transform import matplotlib.units as units @@ -484,6 +484,7 @@ aliases[fullname[4:]] = name[4:] return aliases + _get_valid_values_regex = re.compile(r"\n\s*ACCEPTS:\s*(.*)\n") def get_valid_values(self, attr): """ get the legal arguments for the setter associated with attr @@ -505,10 +506,10 @@ if docstring.startswith('alias for '): return None - for line in docstring.split('\n'): - line = line.lstrip() - if not line.startswith('ACCEPTS:'): continue - return line[8:].strip() + + match = self._get_valid_values_regex.search(docstring) + if match is not None: + return match.group(1) return 'unknown' def get_setters(self): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |