mirror of
https://github.com/fiddlerwoaroof/data-lens.git
synced 2025-11-08 10:16:32 +00:00
feat: reduce-generic for fset:map
This commit is contained in:
@ -63,6 +63,11 @@
|
|||||||
rec))
|
rec))
|
||||||
|
|
||||||
|
|
||||||
|
(defmethod data-lens.transducers.internals:reduce-generic ((map fset:map) (func function) init)
|
||||||
|
(fset:reduce (lambda (acc k v)
|
||||||
|
(funcall func acc (list k v)))
|
||||||
|
map
|
||||||
|
:initial-value init))
|
||||||
(defmethod data-lens.transducers.internals:builder-for-input ((map fset:map))
|
(defmethod data-lens.transducers.internals:builder-for-input ((map fset:map))
|
||||||
(values 'fset-map-builder
|
(values 'fset-map-builder
|
||||||
map))
|
map))
|
||||||
@ -104,6 +109,7 @@
|
|||||||
m)))
|
m)))
|
||||||
(defun make-bag-lens (item)
|
(defun make-bag-lens (item)
|
||||||
(make-set-lens item))
|
(make-set-lens item))
|
||||||
|
|
||||||
(defmethod data-lens.lenses:generic-lens ((rec fset:bag) cb loc)
|
(defmethod data-lens.lenses:generic-lens ((rec fset:bag) cb loc)
|
||||||
(funcall (funcall (make-set-lens loc)
|
(funcall (funcall (make-set-lens loc)
|
||||||
cb)
|
cb)
|
||||||
|
|||||||
Reference in New Issue
Block a user