29 lines
641 B
Python
29 lines
641 B
Python
'''
|
|
# TODO this probably belongs to cachew? or cachew.experimental
|
|
'''
|
|
from contextlib import contextmanager
|
|
|
|
|
|
def disable_cachew():
|
|
'''
|
|
NOTE: you need to use it before importing any function using @cachew.cachew
|
|
'''
|
|
# TODO not sure... maybe it should instead use some hook.. it's a ibt ugly do
|
|
import cachew
|
|
|
|
@cachew.doublewrap
|
|
def cachew_off(func=None, *args, **kwargs):
|
|
return func
|
|
old = cachew.cachew
|
|
cachew.cachew = cachew_off
|
|
return old
|
|
|
|
|
|
@contextmanager
|
|
def disabled_cachew():
|
|
import cachew
|
|
old = disable_cachew()
|
|
try:
|
|
yield
|
|
finally:
|
|
cachew.cachew = old
|