diff options
Diffstat (limited to 'lib/sqlalchemy/util.py')
-rw-r--r-- | lib/sqlalchemy/util.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/sqlalchemy/util.py b/lib/sqlalchemy/util.py index ea5a468d2..0d66080ac 100644 --- a/lib/sqlalchemy/util.py +++ b/lib/sqlalchemy/util.py @@ -11,6 +11,8 @@ except ImportError: import dummy_threading as threading import md5 +import sys +import warnings import __builtin__ @@ -127,6 +129,13 @@ def duck_type_collection(col, default=None): else: return default +def warn_exception(func): + """executes the given function, catches all exceptions and converts to a warning.""" + try: + return func() + except: + warnings.warn(RuntimeWarning("%s('%s') ignored" % sys.exc_info()[0:2])) + class SimpleProperty(object): """A *default* property accessor.""" |