A journal of the handles each update of a persistent map can move, kept in the map and
written in the update that moves them, so a reader reads what moved since its last
position instead of the whole map: the candidate index's candidates and the flat-cache
keys the taxonomy's :cache-moves journals; and an
index of a map's handles by context read again off its journal (indexed). See
docs/nmtms.md, "The candidate journal" and "The inherited-clash memo".
A journal of the handles each update of a persistent map can move, kept in the map and written in the update that moves them, so a reader reads what moved since its last position instead of the whole map: the candidate index's candidates and the flat-cache keys the taxonomy's `:cache-moves` journals; and an index of a map's handles by context read again off its journal (`indexed`). See docs/nmtms.md, "The candidate journal" and "The inherited-clash memo".
(at c up)The handles indexed keeps under the contexts of the set up or under no context, as
a set: read off whichever of the index's contexts and up holds fewer, and the one set
kept under a context itself when no other context contributes.
The handles `indexed` keeps under the contexts of the set `up` or under no context, as a set: read off whichever of the index's contexts and `up` holds fewer, and the one set kept under a context itself when no other context contributes.
(indexed c holds? context-of every)c with ::at holding the handles (holds? c h) answers true of by context, the
context (context-of h) answers: read again for the handles journaled since the
index's position, and built from (every c) when c holds no index or the journal
does not reach back to its position. A handle's context never moves, so a handle
leaving is taken out under the context it entered with.
`c` with `::at` holding the handles `(holds? c h)` answers true of by context, the context `(context-of h)` answers: read again for the handles journaled since the index's position, and built from `(every c)` when `c` holds no index or the journal does not reach back to its position. A handle's context never moves, so a handle leaving is taken out under the context it entered with.
(note c hs)c with the handles hs journaled.
`c` with the handles `hs` journaled.
(position c)The journal's position in c, for since: nil when c journals nothing.
The journal's position in `c`, for `since`: nil when `c` journals nothing.
(restart c)c with a journal no earlier position is in: the map a rebuild leaves, equal to any
other holding the same rows.
`c` with a journal no earlier position is in: the map a rebuild leaves, equal to any other holding the same rows.
(since c pos)The handles c journaled after position pos (position of an earlier value of the
map): none when neither journals anything, and nil when pos is not in c's journal,
after a restart, a journal started past bound, or a copy of the map that journaled
apart.
The handles `c` journaled after position `pos` (`position` of an earlier value of the map): none when neither journals anything, and nil when `pos` is not in `c`'s journal, after a `restart`, a journal started past `bound`, or a copy of the map that journaled apart.
(without c)c with no journal and no index read off it, as an image holds it.
`c` with no journal and no index read off it, as an image holds it.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |