Conversation
| :dependencies {`a+di-update-key#0-target :optional | ||
| `a+di-update-key#1-f :optional | ||
| `a+di-update-key#1-arg#0 :optional} |
There was a problem hiding this comment.
должны зависеть от таргета с предыдущего шага, а он как раз на 1 меньше
| (defn- update-key-key [target idx suffix] | ||
| (symbol (str (symbol target) "+di-update-key#" idx "-" suffix))) | ||
|
|
There was a problem hiding this comment.
что если тут использовать вектор вместо склеивания символа:
[::update-key target idx suffix ...] ?
|
|
||
| ;; тут вот расхождение с `:target` | ||
| ;; нужно подумать над консистентностью | ||
| #_#_ |
There was a problem hiding this comment.
может сделать альяс, и сделать мапы плоскими?
| (defn- update-key-key [target idx suffix] | ||
| (symbol (str (symbol target) "+di-update-key#" idx "-" suffix))) | ||
|
|
||
| (defn update-key |
There was a problem hiding this comment.
или вообще все упростить
1ъ f должен возвращать обернутый объект, который останавливается stop исходного.
Например, если исходный объект был AutoClosable, и stop вызывал close, то новый объект должен тоже реализовывать AutoClosable и просировать вызов в исходный close
И это как раз определение декоратоа, что интерфейс должен сохраняться
2ъ f, args - это фабрики, которые можно не останавливать, что у нас всегда так, это ref и template или plain object. Тогда можно их зависимости просто примешать в зависимости таргета.
Можем это по description проверять, и если не так, то падать
There was a problem hiding this comment.
ну или прокидывать
(build [_ deps add-to-stop-list]
....)
No description provided.