notes
This commit is contained in:
parent
085dc1d333
commit
6e440d235c
2 changed files with 3 additions and 2 deletions
|
|
@ -111,8 +111,8 @@ Finally, you can make `select` and `update` work much faster by precompiling you
|
||||||
```clojure
|
```clojure
|
||||||
(def precompiled (comp-paths ALL :a even?))
|
(def precompiled (comp-paths ALL :a even?))
|
||||||
|
|
||||||
(update [ALL :a even?] structure)
|
(update [ALL :a even?] inc structure)
|
||||||
(update precompiled structure)
|
(update precompiled inc structure)
|
||||||
```
|
```
|
||||||
|
|
||||||
Some more examples:
|
Some more examples:
|
||||||
|
|
|
||||||
|
|
@ -86,6 +86,7 @@
|
||||||
|
|
||||||
(defn structure-path-impl [this]
|
(defn structure-path-impl [this]
|
||||||
(if (fn? this)
|
(if (fn? this)
|
||||||
|
;;TODO: this isn't kosher, it uses knowledge of internals of protocols
|
||||||
(-> StructurePath :impls (get clojure.lang.AFn))
|
(-> StructurePath :impls (get clojure.lang.AFn))
|
||||||
(find-protocol-impl! StructurePath this)))
|
(find-protocol-impl! StructurePath this)))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue