notes
This commit is contained in:
parent
3f26eb1826
commit
bde18388d7
1 changed files with 5 additions and 1 deletions
|
|
@ -1,6 +1,10 @@
|
||||||
(ns com.rpl.specter.protocols)
|
(ns com.rpl.specter.protocols)
|
||||||
|
|
||||||
|
|
||||||
|
;;TODO: might be able to speed it up more by having these return a function rather than
|
||||||
|
;;rely on protocol methods (can then compose functions together directly)
|
||||||
|
;;so protocol would just be used during composition - what about execution?
|
||||||
|
;;could have a select-fast function that takes in a selector FUNCTION explicitly
|
||||||
(defprotocol StructureValsPath
|
(defprotocol StructureValsPath
|
||||||
(select-full* [this vals structure next-fn])
|
(select-full* [this vals structure next-fn])
|
||||||
(update-full* [this vals structure next-fn]))
|
(update-full* [this vals structure next-fn]))
|
||||||
|
|
@ -16,4 +20,4 @@
|
||||||
;;StructurePath in sequence become a single StructurePath
|
;;StructurePath in sequence become a single StructurePath
|
||||||
;;any StructureValsPath composed with anything becomes a StructureValsPath
|
;;any StructureValsPath composed with anything becomes a StructureValsPath
|
||||||
;;TODO: update update/select to be able to execute a StructurePath directly without coercing it
|
;;TODO: update update/select to be able to execute a StructurePath directly without coercing it
|
||||||
;; - this will avoid MANY layers of indirection and overhead
|
;; - this will avoid MANY layers of indirection and overhead
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue