mirror of
https://github.com/fiddlerwoaroof/data-lens.git
synced 2025-11-08 10:16:32 +00:00
feat: add x-group
This commit is contained in:
@ -423,6 +423,11 @@
|
||||
(reverse (cdr it))))
|
||||
(alexandria:hash-table-alist groups)))))
|
||||
|
||||
(defun x-group (fn)
|
||||
(lambda (groups)
|
||||
(loop for (key . group) in groups
|
||||
collect (funcall fn key group))))
|
||||
|
||||
(defun hash-join (probe join-fn &key (test 'eql) (key 'car))
|
||||
(let* ((lookup (make-hash-table :test test :size (length probe)))
|
||||
(lookup-fn (functionalize lookup)))
|
||||
|
||||
@ -21,9 +21,7 @@
|
||||
#:transform-elt #:denest #:op #:defalias #:<> #:<>1 #:== #:•
|
||||
#:∘ #:suffixp #:functionalize #:inc #:group-by #:keys
|
||||
#:conj #:disj #:delay #:of-type #:transform #:calling*
|
||||
#:calling
|
||||
#:hash-join
|
||||
#:tap))
|
||||
#:calling #:hash-join #:tap #:x-group))
|
||||
|
||||
(defpackage :data-lens.transducers.internals
|
||||
(:use :cl)
|
||||
|
||||
Reference in New Issue
Block a user