In [1]: from dogpile.cache import make_region
In [2]: region = make_region().configure(
...: 'dogpile.cache.memory'
...: )
In [3]: import inspect
In [4]: def func(a, b, c=True, *args, **kwargs):
...: return None
In [5]: inspect.getargspec(func)
Out[5]: ArgSpec(args=['a', 'b', 'c'], varargs='args', keywords='kwargs', defaults=(True,))
In [6]: cached_func = region.cache_on_arguments()(func)
In [7]: inspect.getargspec(cached_func)
Out[7]: ArgSpec(args=[], varargs='arg', keywords='kw', defaults=None)