Mercurial > hg > config
diff python/example/fireonce.py @ 524:dbe9086643bf
-> example
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Tue, 24 Sep 2013 12:29:59 -0700 |
parents | python/fireonce.py@8006938c33ac |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python/example/fireonce.py Tue Sep 24 12:29:59 2013 -0700 @@ -0,0 +1,15 @@ +class fireonce(object): + def __init__(self, func): + self.func = func + def __call__(self, *args, **kwargs): + if not self.func: + return None + retval = self.func(*args, **kwargs) + self.func = None + +@fireonce +def foo(x): + print x + +foo('bar') +foo('fleem') # not printed