Liking cljdoc? Tell your friends :D

ordered-collections.kernel.chunk

PRopeChunk protocol extensions for the built-in chunk backends used by the rope kernel.

The rope kernel operates on opaque 'chunks' whose concrete type varies by rope variant:

Rope — APersistentVector chunks (arbitrary Clojure values) StringRope — java.lang.String chunks (UTF-16 code units) ByteRope — byte[] chunks (raw bytes, unsigned 0–255 semantics)

Each backend here provides the 13 primitive operations the kernel needs (length, slice, merge, nth, append, last, butlast, update, of, reduce-init, append-sb, splice, splice-split). The rope kernel dispatches through the PRopeChunk protocol so that rope-concat/split/splice/etc. are written once and work for every backend.

PRopeChunk is strictly an internal dispatch table — nothing outside the kernel should depend on these methods directly. User-facing interop with Clojure built-in collections lives in ordered-collections.types.interop.

PRopeChunk protocol extensions for the built-in chunk backends used by
the rope kernel.

The rope kernel operates on opaque 'chunks' whose concrete type varies by
rope variant:

  Rope        — APersistentVector chunks (arbitrary Clojure values)
  StringRope  — java.lang.String chunks (UTF-16 code units)
  ByteRope    — byte[] chunks (raw bytes, unsigned 0–255 semantics)

Each backend here provides the 13 primitive operations the kernel needs
(length, slice, merge, nth, append, last, butlast, update, of,
reduce-init, append-sb, splice, splice-split). The rope kernel dispatches
through the PRopeChunk protocol so that rope-concat/split/splice/etc.
are written once and work for every backend.

PRopeChunk is strictly an internal dispatch table — nothing outside the
kernel should depend on these methods directly. User-facing interop with
Clojure built-in collections lives in `ordered-collections.types.interop`.
raw docstring

No vars found in this namespace.

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close