vine.funtools¶
Functional utilities.
-
vine.funtools.
maybe_promise
(p)[source]¶ Return None if p is unefined, otherwise make sure it’s a promise.
-
vine.funtools.
ensure_promise
(p)[source]¶ Ensure p is a promise.
If p is not a promise, a new promise is created with p’ as callback.
-
vine.funtools.
preplace
(p, *args, **kwargs)[source]¶ Replace promise arguments.
This will force the promise to disregard any arguments the promise is fulfilled with, and to be called with the provided arguments instead.
-
vine.funtools.
ready_promise
(callback=None, *args)[source]¶ Create promise that is already fulfilled.
-
vine.funtools.
transform
(filter_, callback, *filter_args, **filter_kwargs)[source]¶ Filter final argument to a promise.
E.g. to coerce callback argument to
int
:transform(int, callback)
or a more complex example extracting something from a dict and coercing the value to
float
:def filter_key_value(key, filter_, mapping): return filter_(mapping[key]) def get_page_expires(self, url, callback=None): return self.request( 'GET', url, callback=transform(get_key, callback, 'PageExpireValue', int), )