Liking cljdoc? Tell your friends :D

eacl.datahike.impl


affected-relation-idsclj

(affected-relation-ids tx-data)

Every relation named by relationship tuple retraction ops.

Every relation named by relationship tuple retraction ops.
raw docstring

all-relation-defsclj

(all-relation-defs db)

create-relationship-at-commitclj

(create-relationship-at-commit db resolved relationship)

Commit-time precondition behind :create. It re-checks the relationship against the transaction-time database, so two writers that both planned a :create against the same pre-write value are serialized by the writer: the first commits and the second observes the winner and fails with :eacl/relationship-conflict (Datahike wraps the throw; eacl.datahike.core unwraps it).

The planned adds remain adjacent to their update in the outer transaction; the shared writer runs every create precondition before those mutations so all updates in one batch retain the calculation-snapshot semantics shared with Datomic.

Commit-time precondition behind `:create`. It re-checks the relationship
against the transaction-time database, so two writers that both planned a
`:create` against the same pre-write value are serialized by the writer: the
first commits and the second observes the winner and fails with
`:eacl/relationship-conflict` (Datahike wraps the throw;
`eacl.datahike.core` unwraps it).

The planned adds remain adjacent to their update in the outer transaction;
the shared writer runs every create precondition before those mutations so
all updates in one batch retain the calculation-snapshot semantics shared
with Datomic.
raw docstring

direct-edgeclj

(direct-edge db subject-type subject-id relation-id resource-type resource-id)

Stored compact edge or nil, prior to request qualification.

Stored compact edge or nil, prior to request qualification.
raw docstring

direct-match?clj

(direct-match? db subject-type subject-id relation-id resource-type resource-id)

find-one-relationship-idclj

(find-one-relationship-id db relationship)

Returns the resolved identity for a supported complete pair, or nil.

Returns the resolved identity for a supported complete pair, or nil.
raw docstring

find-permission-defsclj

(find-permission-defs db resource-type permission-name)
(find-permission-defs db v8-storage? resource-type permission-name)

orphaned-relationship-halvesclj

(orphaned-relationship-halves db)

Offline exact-peer diagnostics, including malformed and mismatched qualifiers.

Offline exact-peer diagnostics, including malformed and mismatched qualifiers.
raw docstring

Permissionclj


permission-def-pullclj


read-relationshipsclj

(read-relationships db filters)
(read-relationships db filters decision-kernel)
(read-relationships db filters decision-kernel window-options)

Relationclj


relation-datomsclj

(relation-datoms db resource-type relation-name)

Returns relation datoms for the exact resource/relation name pair, for ANY subject-type keyword. Implemented as a seek + prefix take-while rather than a bounded index-range: a keyword-sentinel range like [.. :a]..[.. :z] silently misses subject types that collate outside it (uppercase-initial, z-prefixed, and namespaced keywords), making those relations invisible to permission evaluation (audit 2).

Returns relation datoms for the exact resource/relation name pair, for ANY
subject-type keyword. Implemented as a seek + prefix take-while rather than a
bounded index-range: a keyword-sentinel range like [.. :a]..[.. :z] silently
misses subject types that collate outside it (uppercase-initial, z-prefixed,
and namespaced keywords), making those relations invisible to permission
evaluation (audit 2).
raw docstring

Relationshipclj

(Relationship subject relation resource)

relationship-publication-inputclj

(relationship-publication-input db relationship)

Resolves the same endpoint identities and commit guards as ordinary writes.

Resolves the same endpoint identities and commit guards as ordinary writes.
raw docstring

relationship-relation-idclj

(relationship-relation-id db relationship)

resource->subjectsclj

(resource->subjects db
                    resource-type
                    resource-id
                    relation-id
                    subject-type
                    cursor-or-options)

stamp-relation-versionsclj

(stamp-relation-versions tx-data)

Adds one idempotent native generation stamp per affected relation.

Adds one idempotent native generation stamp per affected relation.
raw docstring

subject->resourcesclj

(subject->resources db
                    subject-type
                    subject-id
                    relation-id
                    resource-type
                    cursor-or-options)

tx-delete-objectclj

(tx-delete-object db object-id)

Exact paired cleanup, including surviving peers of an already deleted object.

Exact paired cleanup, including surviving peers of an already deleted object.
raw docstring

tx-relation-version-stampclj

(tx-relation-version-stamp relation-id)

tx-update-relationshipclj

(tx-update-relationship db {:keys [operation relationship]})

v8-permission-storage?clj

(v8-permission-storage? db)

Whether db carries the v8 expression-storage stamp; constant for one immutable db value, so adapters read it once rather than per definition read.

Whether `db` carries the v8 expression-storage stamp; constant for one
immutable db value, so adapters read it once rather than per definition
read.
raw docstring

validate-relationship-operation!clj

(validate-relationship-operation! operation)

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