|
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.
|