1""" 2Alternate namespace for cytoolz such that all functions are curried 3 4Currying provides implicit partial evaluation of all functions 5 6Example: 7 8 Get usually requires two arguments, an index and a collection 9 >>> from cytoolz.curried import get 10 >>> get(0, ('a', 'b')) 11 'a' 12 13 When we use it in higher order functions we often want to pass a partially 14 evaluated form 15 >>> data = [(1, 2), (11, 22), (111, 222)] 16 >>> list(map(lambda seq: get(0, seq), data)) 17 [1, 11, 111] 18 19 The curried version allows simple expression of partial evaluation 20 >>> list(map(get(0), data)) 21 [1, 11, 111] 22 23See Also: 24 cytoolz.functoolz.curry 25""" 26import cytoolz 27from . import operator 28from cytoolz import ( 29 apply, 30 comp, 31 complement, 32 compose, 33 compose_left, 34 concat, 35 concatv, 36 count, 37 curry, 38 diff, 39 first, 40 flip, 41 frequencies, 42 identity, 43 interleave, 44 isdistinct, 45 isiterable, 46 juxt, 47 last, 48 memoize, 49 merge_sorted, 50 peek, 51 pipe, 52 second, 53 thread_first, 54 thread_last, 55) 56from .exceptions import merge, merge_with 57 58accumulate = cytoolz.curry(cytoolz.accumulate) 59assoc = cytoolz.curry(cytoolz.assoc) 60assoc_in = cytoolz.curry(cytoolz.assoc_in) 61cons = cytoolz.curry(cytoolz.cons) 62countby = cytoolz.curry(cytoolz.countby) 63dissoc = cytoolz.curry(cytoolz.dissoc) 64do = cytoolz.curry(cytoolz.do) 65drop = cytoolz.curry(cytoolz.drop) 66excepts = cytoolz.curry(cytoolz.excepts) 67filter = cytoolz.curry(cytoolz.filter) 68get = cytoolz.curry(cytoolz.get) 69get_in = cytoolz.curry(cytoolz.get_in) 70groupby = cytoolz.curry(cytoolz.groupby) 71interpose = cytoolz.curry(cytoolz.interpose) 72itemfilter = cytoolz.curry(cytoolz.itemfilter) 73itemmap = cytoolz.curry(cytoolz.itemmap) 74iterate = cytoolz.curry(cytoolz.iterate) 75join = cytoolz.curry(cytoolz.join) 76keyfilter = cytoolz.curry(cytoolz.keyfilter) 77keymap = cytoolz.curry(cytoolz.keymap) 78map = cytoolz.curry(cytoolz.map) 79mapcat = cytoolz.curry(cytoolz.mapcat) 80nth = cytoolz.curry(cytoolz.nth) 81partial = cytoolz.curry(cytoolz.partial) 82partition = cytoolz.curry(cytoolz.partition) 83partition_all = cytoolz.curry(cytoolz.partition_all) 84partitionby = cytoolz.curry(cytoolz.partitionby) 85peekn = cytoolz.curry(cytoolz.peekn) 86pluck = cytoolz.curry(cytoolz.pluck) 87random_sample = cytoolz.curry(cytoolz.random_sample) 88reduce = cytoolz.curry(cytoolz.reduce) 89reduceby = cytoolz.curry(cytoolz.reduceby) 90remove = cytoolz.curry(cytoolz.remove) 91sliding_window = cytoolz.curry(cytoolz.sliding_window) 92sorted = cytoolz.curry(cytoolz.sorted) 93tail = cytoolz.curry(cytoolz.tail) 94take = cytoolz.curry(cytoolz.take) 95take_nth = cytoolz.curry(cytoolz.take_nth) 96topk = cytoolz.curry(cytoolz.topk) 97unique = cytoolz.curry(cytoolz.unique) 98update_in = cytoolz.curry(cytoolz.update_in) 99valfilter = cytoolz.curry(cytoolz.valfilter) 100valmap = cytoolz.curry(cytoolz.valmap) 101 102del exceptions 103del cytoolz 104