<s> """<STR_LIT>""" <EOL> __author__ = "<STR_LIT>" <EOL> __license__ = "<STR_LIT>" <EOL> __version__ = '<STR_LIT>' <EOL> from . backends import DictCache <EOL> from . cdf import CacheDecoratorFactory <EOL> default_backend = None <EOL> def get_default_backend ( ) : <EOL> """<STR_LIT>""" <EOL> global default_backend <EOL> if not default_backend : <EOL> default_backend = DictCache ( ) <EOL> return default_backend <EOL> def set_default_backend ( backend ) : <EOL> """<STR_LIT>""" <EOL> global default_backend <EOL> default_backend = backend <EOL> def supycache ( ** options ) : <EOL> """<STR_LIT>""" <EOL> recognized_options = { '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> } <EOL> if recognized_options . isdisjoint ( options ) : <EOL> raise KeyError ( '<STR_LIT>' % <EOL> '<STR_LIT:U+002CU+0020>' . join ( recognized_options ) ) <EOL> backend = options . pop ( '<STR_LIT>' , get_default_backend ( ) ) <EOL> def prepare_inner ( function ) : <EOL> cdf = CacheDecoratorFactory ( backend , ** options ) <EOL> return cdf ( function ) <EOL> return prepare_inner </s>
