Commit 6d6eb15 1 parent 3fd56f7 commit 6d6eb15 Copy full SHA for 6d6eb15
File tree 2 files changed +3
-2
lines changed
2 files changed +3
-2
lines changed Original file line number Diff line number Diff line change 307
307
308
308
(trie-reorder-keys [this new-order]
309
309
; ; the arity between the keys could include adding in new keys. In which case this is going to have to identify new values for this
310
- (assert (>= (count new-order) arity))
310
+ (dyna- assert (>= (count new-order) arity))
311
311
(if (= new-order (vec (range arity)))
312
312
this ; ; there is no change so just return this without making any changes
313
313
(let [new-contains-wildcard (reduce bit-or 0 (map (fn [i] (if (or (nil? (nth new-order i))
Original file line number Diff line number Diff line change 212
212
(if (is-disjunct-op? new-child-rexpr)
213
213
(let [child-trie ^PrefixTrie (:rexprs new-child-rexpr)
214
214
child-vars (:disjunction-variables new-child-rexpr)
215
+ known-values (vec (map #(get-value-in-context % child-context) child-vars))
215
216
new-order (vec (map (zipmap child-vars (range )) dj-vars))
216
- t-reordered (trie-reorder-keys child-trie new-order)]
217
+ t-reordered (trie-reorder-keys-subselect child-trie new-order known-values )]
217
218
(vswap! ret-children trie-merge t-reordered)
218
219
(vswap! num-children #(+ 2 %)) ; ; there should be at least 2 children getting added, so we will still return a trie in the end
219
220
)
You can’t perform that action at this time.
0 commit comments