[−][src]Struct libpijul::pristine::sanakirja::GenericTxn
A transaction, used both for mutable and immutable transactions,
depending on type parameter T
.
In Sanakirja, both sanakirja::Txn
and sanakirja::MutTxn
implement sanakirja::Transaction
, explaining our implementation
of TxnT
for Txn<T>
for all T: sanakirja::Transaction
. This
covers both mutable and immutable transactions in a single
implementation.
Implementations
impl GenericTxn<Txn<Exclusive, Arc<Env<Exclusive>>>>
[src]
pub fn check_database(&self) -> DatabaseReport
[src]
impl GenericTxn<Txn<Exclusive, Arc<Env<Exclusive>>>>
[src]
pub fn load_const_channel(
&self,
name: &str
) -> Result<Option<Channel>, SanakirjaError>
[src]
&self,
name: &str
) -> Result<Option<Channel>, SanakirjaError>
Trait Implementations
impl<T: Transaction> ChannelTxnT for GenericTxn<T>
[src]
type Channel = Channel
pub fn graph<'a>(&self, c: &'a Self::Channel) -> &'a Db<Vertex<ChangeId>, Edge>
[src]
pub fn name<'a>(&self, c: &'a Self::Channel) -> &'a str
[src]
pub fn apply_counter(&self, channel: &Self::Channel) -> u64
[src]
pub fn last_modified(&self, channel: &Self::Channel) -> u64
[src]
pub fn changes<'a>(&self, channel: &'a Self::Channel) -> &'a Self::Changeset
[src]
pub fn rev_changes<'a>(
&self,
channel: &'a Self::Channel
) -> &'a Self::RevChangeset
[src]
&self,
channel: &'a Self::Channel
) -> &'a Self::RevChangeset
type Changeset = Db<ChangeId, u64>
type RevChangeset = Db<u64, (ChangeId, Merkle)>
pub fn get_changeset(
&self,
channel: &Self::Changeset,
c: ChangeId
) -> Result<Option<u64>, TxnErr<Self::GraphError>>
[src]
&self,
channel: &Self::Changeset,
c: ChangeId
) -> Result<Option<u64>, TxnErr<Self::GraphError>>
pub fn get_revchangeset(
&self,
revchanges: &Self::RevChangeset,
c: u64
) -> Result<Option<(ChangeId, Merkle)>, TxnErr<Self::GraphError>>
[src]
&self,
revchanges: &Self::RevChangeset,
c: u64
) -> Result<Option<(ChangeId, Merkle)>, TxnErr<Self::GraphError>>
type ChangesetCursor = Cursor
pub fn cursor_changeset<'a>(
&'a self,
channel: &Self::Changeset,
pos: Option<ChangeId>
) -> Result<Cursor<Self, &'a Self, Self::ChangesetCursor, ChangeId, u64>, TxnErr<SanakirjaError>>
[src]
&'a self,
channel: &Self::Changeset,
pos: Option<ChangeId>
) -> Result<Cursor<Self, &'a Self, Self::ChangesetCursor, ChangeId, u64>, TxnErr<SanakirjaError>>
type RevchangesetCursor = Cursor
pub fn cursor_revchangeset_ref<'a, RT: Deref<Target = Self>>(
txn: RT,
channel: &Self::RevChangeset,
pos: Option<u64>
) -> Result<Cursor<Self, RT, Self::RevchangesetCursor, u64, (ChangeId, Merkle)>, TxnErr<SanakirjaError>>
[src]
txn: RT,
channel: &Self::RevChangeset,
pos: Option<u64>
) -> Result<Cursor<Self, RT, Self::RevchangesetCursor, u64, (ChangeId, Merkle)>, TxnErr<SanakirjaError>>
pub fn rev_cursor_revchangeset<'a>(
&'a self,
channel: &Self::RevChangeset,
pos: Option<u64>
) -> Result<RevCursor<Self, &'a Self, Self::RevchangesetCursor, u64, (ChangeId, Merkle)>, TxnErr<SanakirjaError>>
[src]
&'a self,
channel: &Self::RevChangeset,
pos: Option<u64>
) -> Result<RevCursor<Self, &'a Self, Self::RevchangesetCursor, u64, (ChangeId, Merkle)>, TxnErr<SanakirjaError>>
pub fn cursor_revchangeset_next(
&self,
cursor: &mut Self::RevchangesetCursor
) -> Result<Option<(u64, (ChangeId, Merkle))>, TxnErr<SanakirjaError>>
[src]
&self,
cursor: &mut Self::RevchangesetCursor
) -> Result<Option<(u64, (ChangeId, Merkle))>, TxnErr<SanakirjaError>>
pub fn cursor_revchangeset_prev(
&self,
cursor: &mut Self::RevchangesetCursor
) -> Result<Option<(u64, (ChangeId, Merkle))>, TxnErr<SanakirjaError>>
[src]
&self,
cursor: &mut Self::RevchangesetCursor
) -> Result<Option<(u64, (ChangeId, Merkle))>, TxnErr<SanakirjaError>>
pub fn cursor_changeset_next(
&self,
cursor: &mut Self::ChangesetCursor
) -> Result<Option<(ChangeId, u64)>, TxnErr<SanakirjaError>>
[src]
&self,
cursor: &mut Self::ChangesetCursor
) -> Result<Option<(ChangeId, u64)>, TxnErr<SanakirjaError>>
pub fn cursor_changeset_prev(
&self,
cursor: &mut Self::ChangesetCursor
) -> Result<Option<(ChangeId, u64)>, TxnErr<SanakirjaError>>
[src]
&self,
cursor: &mut Self::ChangesetCursor
) -> Result<Option<(ChangeId, u64)>, TxnErr<SanakirjaError>>
type States = Db<Merkle, u64>
pub fn states<'a>(&self, channel: &'a Self::Channel) -> &'a Self::States
[src]
pub fn channel_has_state(
&self,
channel: &Self::States,
m: Merkle
) -> Result<Option<u64>, TxnErr<Self::GraphError>>
[src]
&self,
channel: &Self::States,
m: Merkle
) -> Result<Option<u64>, TxnErr<Self::GraphError>>
impl<T: Transaction> DepsTxnT for GenericTxn<T>
[src]
type DepsError = SanakirjaError
type Dep = Db<ChangeId, ChangeId>
type Revdep = Db<ChangeId, ChangeId>
pub fn get_dep<'txn>(
&'txn self,
key: ChangeId,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
[src]
&'txn self,
key: ChangeId,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
pub fn get_revdep<'txn>(
&'txn self,
key: ChangeId,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
[src]
&'txn self,
key: ChangeId,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
type DepCursor = Cursor
pub fn cursor_dep<'txn>(
&'txn self,
db: &Self::Dep,
pos: Option<(ChangeId, Option<ChangeId>)>
) -> Result<Cursor<Self, &'txn Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Dep,
pos: Option<(ChangeId, Option<ChangeId>)>
) -> Result<Cursor<Self, &'txn Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<SanakirjaError>>
pub fn cursor_dep_ref<RT: Deref<Target = Self>>(
txn: RT,
db: &Self::Dep,
pos: Option<(ChangeId, Option<ChangeId>)>
) -> Result<Cursor<Self, RT, Self::DepCursor, ChangeId, ChangeId>, TxnErr<SanakirjaError>>
[src]
txn: RT,
db: &Self::Dep,
pos: Option<(ChangeId, Option<ChangeId>)>
) -> Result<Cursor<Self, RT, Self::DepCursor, ChangeId, ChangeId>, TxnErr<SanakirjaError>>
pub fn cursor_dep_next<'txn>(
&'txn self,
cursor: &mut Self::DepCursor
) -> Result<Option<(ChangeId, ChangeId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::DepCursor
) -> Result<Option<(ChangeId, ChangeId)>, TxnErr<SanakirjaError>>
pub fn cursor_dep_prev<'txn>(
&'txn self,
cursor: &mut Self::DepCursor
) -> Result<Option<(ChangeId, ChangeId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::DepCursor
) -> Result<Option<(ChangeId, ChangeId)>, TxnErr<SanakirjaError>>
pub fn iter_dep_ref<RT: Deref<Target = Self> + Clone>(
txn: RT,
p: ChangeId
) -> Result<Cursor<Self, RT, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
[src]
txn: RT,
p: ChangeId
) -> Result<Cursor<Self, RT, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
pub fn get_touched_files<'txn>(
&'txn self,
key: Position<ChangeId>,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
[src]
&'txn self,
key: Position<ChangeId>,
value: Option<ChangeId>
) -> Result<Option<ChangeId>, TxnErr<Self::DepsError>>
pub fn get_rev_touched_files<'txn>(
&'txn self,
key: ChangeId,
value: Option<Position<ChangeId>>
) -> Result<Option<Position<ChangeId>>, TxnErr<Self::DepsError>>
[src]
&'txn self,
key: ChangeId,
value: Option<Position<ChangeId>>
) -> Result<Option<Position<ChangeId>>, TxnErr<Self::DepsError>>
type Touched_files = Db<Position<ChangeId>, ChangeId>
type Rev_touched_files = Db<ChangeId, Position<ChangeId>>
type Touched_filesCursor = Cursor
pub fn cursor_touched_files<'txn>(
&'txn self,
db: &Self::Touched_files,
pos: Option<(Position<ChangeId>, Option<ChangeId>)>
) -> Result<Cursor<Self, &'txn Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Touched_files,
pos: Option<(Position<ChangeId>, Option<ChangeId>)>
) -> Result<Cursor<Self, &'txn Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<SanakirjaError>>
pub fn cursor_touched_files_next<'txn>(
&'txn self,
cursor: &mut Self::Touched_filesCursor
) -> Result<Option<(Position<ChangeId>, ChangeId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::Touched_filesCursor
) -> Result<Option<(Position<ChangeId>, ChangeId)>, TxnErr<SanakirjaError>>
pub fn cursor_touched_files_prev<'txn>(
&'txn self,
cursor: &mut Self::Touched_filesCursor
) -> Result<Option<(Position<ChangeId>, ChangeId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::Touched_filesCursor
) -> Result<Option<(Position<ChangeId>, ChangeId)>, TxnErr<SanakirjaError>>
pub fn iter_touched_files<'txn>(
&'txn self,
k: Position<ChangeId>,
v: Option<ChangeId>
) -> Result<Cursor<Self, &'txn Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<SanakirjaError>>
[src]
&'txn self,
k: Position<ChangeId>,
v: Option<ChangeId>
) -> Result<Cursor<Self, &'txn Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<SanakirjaError>>
type Rev_touched_filesCursor = Cursor
pub fn cursor_rev_touched_files<'txn>(
&'txn self,
db: &Self::Rev_touched_files,
pos: Option<(ChangeId, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Rev_touched_files,
pos: Option<(ChangeId, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<SanakirjaError>>
pub fn cursor_rev_touched_files_next<'txn>(
&'txn self,
cursor: &mut Self::Rev_touched_filesCursor
) -> Result<Option<(ChangeId, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::Rev_touched_filesCursor
) -> Result<Option<(ChangeId, Position<ChangeId>)>, TxnErr<SanakirjaError>>
pub fn cursor_rev_touched_files_prev<'txn>(
&'txn self,
cursor: &mut Self::Rev_touched_filesCursor
) -> Result<Option<(ChangeId, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::Rev_touched_filesCursor
) -> Result<Option<(ChangeId, Position<ChangeId>)>, TxnErr<SanakirjaError>>
pub fn iter_rev_touched_files<'txn>(
&'txn self,
k: ChangeId,
v: Option<Position<ChangeId>>
) -> Result<Cursor<Self, &'txn Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<SanakirjaError>>
[src]
&'txn self,
k: ChangeId,
v: Option<Position<ChangeId>>
) -> Result<Cursor<Self, &'txn Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<SanakirjaError>>
pub fn iter_revdep(
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
[src]
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
pub fn iter_dep(
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
[src]
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::DepCursor, ChangeId, ChangeId>, TxnErr<Self::DepsError>>
pub fn iter_touched(
&self,
k: Position<ChangeId>
) -> Result<Cursor<Self, &Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<Self::DepsError>>
[src]
&self,
k: Position<ChangeId>
) -> Result<Cursor<Self, &Self, Self::Touched_filesCursor, Position<ChangeId>, ChangeId>, TxnErr<Self::DepsError>>
pub fn iter_rev_touched(
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<Self::DepsError>>
[src]
&self,
k: ChangeId
) -> Result<Cursor<Self, &Self, Self::Rev_touched_filesCursor, ChangeId, Position<ChangeId>>, TxnErr<Self::DepsError>>
impl<T: Transaction> GraphIter for GenericTxn<T>
[src]
type GraphCursor = Cursor
pub fn iter_graph(
&self,
g: &Self::Graph
) -> Result<Self::GraphCursor, TxnErr<Self::GraphError>>
[src]
&self,
g: &Self::Graph
) -> Result<Self::GraphCursor, TxnErr<Self::GraphError>>
pub fn next_graph(
&self,
_: &Self::Graph,
a: &mut Self::GraphCursor
) -> Option<Result<(Vertex<ChangeId>, Edge), TxnErr<Self::GraphError>>>
[src]
&self,
_: &Self::Graph,
a: &mut Self::GraphCursor
) -> Option<Result<(Vertex<ChangeId>, Edge), TxnErr<Self::GraphError>>>
impl<T: Transaction> GraphTxnT for GenericTxn<T>
[src]
type Graph = Db<Vertex<ChangeId>, Edge>
type GraphError = SanakirjaError
pub fn get_graph(
&self,
db: &Self::Graph,
key: Vertex<ChangeId>,
value: Option<Edge>
) -> Result<Option<Edge>, TxnErr<Self::GraphError>>
[src]
&self,
db: &Self::Graph,
key: Vertex<ChangeId>,
value: Option<Edge>
) -> Result<Option<Edge>, TxnErr<Self::GraphError>>
pub fn get_external(
&self,
p: ChangeId
) -> Result<Option<Hash>, TxnErr<Self::GraphError>>
[src]
&self,
p: ChangeId
) -> Result<Option<Hash>, TxnErr<Self::GraphError>>
pub fn get_internal(
&self,
p: Hash
) -> Result<Option<ChangeId>, TxnErr<Self::GraphError>>
[src]
&self,
p: Hash
) -> Result<Option<ChangeId>, TxnErr<Self::GraphError>>
type Adj = Adj
pub fn init_adj(
&self,
g: &Self::Graph,
key: Vertex<ChangeId>,
dest: Position<ChangeId>,
min_flag: EdgeFlags,
max_flag: EdgeFlags
) -> Result<Self::Adj, TxnErr<Self::GraphError>>
[src]
&self,
g: &Self::Graph,
key: Vertex<ChangeId>,
dest: Position<ChangeId>,
min_flag: EdgeFlags,
max_flag: EdgeFlags
) -> Result<Self::Adj, TxnErr<Self::GraphError>>
pub fn next_adj(
&self,
_: &Self::Graph,
a: &mut Self::Adj
) -> Option<Result<Edge, TxnErr<Self::GraphError>>>
[src]
&self,
_: &Self::Graph,
a: &mut Self::Adj
) -> Option<Result<Edge, TxnErr<Self::GraphError>>>
pub fn find_block(
&self,
graph: &Self::Graph,
p: Position<ChangeId>
) -> Result<Vertex<ChangeId>, BlockError<Self::GraphError>>
[src]
&self,
graph: &Self::Graph,
p: Position<ChangeId>
) -> Result<Vertex<ChangeId>, BlockError<Self::GraphError>>
pub fn find_block_end(
&self,
graph: &Self::Graph,
p: Position<ChangeId>
) -> Result<Vertex<ChangeId>, BlockError<Self::GraphError>>
[src]
&self,
graph: &Self::Graph,
p: Position<ChangeId>
) -> Result<Vertex<ChangeId>, BlockError<Self::GraphError>>
impl<T: Transaction> Send for GenericTxn<T>
[src]
This is actually safe because the only non-Send fields are
open_channels
and open_remotes
, but we can't do anything with
a ChannelRef
whose transaction has been moved to another thread.
impl<T: Transaction> TreeTxnT for GenericTxn<T>
[src]
type TreeError = SanakirjaError
type Inodes = Db<Inode, Position<ChangeId>>
type Revinodes = Db<Position<ChangeId>, Inode>
pub fn get_inodes<'txn>(
&'txn self,
key: Inode,
value: Option<Position<ChangeId>>
) -> Result<Option<Position<ChangeId>>, TxnErr<Self::TreeError>>
[src]
&'txn self,
key: Inode,
value: Option<Position<ChangeId>>
) -> Result<Option<Position<ChangeId>>, TxnErr<Self::TreeError>>
pub fn get_revinodes<'txn>(
&'txn self,
key: Position<ChangeId>,
value: Option<Inode>
) -> Result<Option<Inode>, TxnErr<Self::TreeError>>
[src]
&'txn self,
key: Position<ChangeId>,
value: Option<Inode>
) -> Result<Option<Inode>, TxnErr<Self::TreeError>>
type InodesCursor = Cursor
pub fn cursor_inodes<'txn>(
&'txn self,
db: &Self::Inodes,
pos: Option<(Inode, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::InodesCursor, Inode, Position<ChangeId>>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Inodes,
pos: Option<(Inode, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::InodesCursor, Inode, Position<ChangeId>>, TxnErr<SanakirjaError>>
pub fn cursor_inodes_next<'txn>(
&'txn self,
cursor: &mut Self::InodesCursor
) -> Result<Option<(Inode, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::InodesCursor
) -> Result<Option<(Inode, Position<ChangeId>)>, TxnErr<SanakirjaError>>
pub fn cursor_inodes_prev<'txn>(
&'txn self,
cursor: &mut Self::InodesCursor
) -> Result<Option<(Inode, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::InodesCursor
) -> Result<Option<(Inode, Position<ChangeId>)>, TxnErr<SanakirjaError>>
type RevinodesCursor = Cursor
pub fn cursor_revinodes<'txn>(
&'txn self,
db: &Self::Revinodes,
pos: Option<(Position<ChangeId>, Option<Inode>)>
) -> Result<Cursor<Self, &'txn Self, Self::RevinodesCursor, Position<ChangeId>, Inode>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Revinodes,
pos: Option<(Position<ChangeId>, Option<Inode>)>
) -> Result<Cursor<Self, &'txn Self, Self::RevinodesCursor, Position<ChangeId>, Inode>, TxnErr<SanakirjaError>>
pub fn cursor_revinodes_next<'txn>(
&'txn self,
cursor: &mut Self::RevinodesCursor
) -> Result<Option<(Position<ChangeId>, Inode)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RevinodesCursor
) -> Result<Option<(Position<ChangeId>, Inode)>, TxnErr<SanakirjaError>>
pub fn cursor_revinodes_prev<'txn>(
&'txn self,
cursor: &mut Self::RevinodesCursor
) -> Result<Option<(Position<ChangeId>, Inode)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RevinodesCursor
) -> Result<Option<(Position<ChangeId>, Inode)>, TxnErr<SanakirjaError>>
type Tree = Db<UnsafePathId, Inode>
pub fn get_tree<'txn>(
&'txn self,
key: PathId<'_>,
value: Option<Inode>
) -> Result<Option<Inode>, TxnErr<Self::TreeError>>
[src]
&'txn self,
key: PathId<'_>,
value: Option<Inode>
) -> Result<Option<Inode>, TxnErr<Self::TreeError>>
type TreeCursor = Cursor
pub fn cursor_tree<'txn>(
&'txn self,
db: &Self::Tree,
pos: Option<(OwnedPathId, Option<Inode>)>
) -> Result<Cursor<Self, &'txn Self, Self::TreeCursor, OwnedPathId, Inode>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Tree,
pos: Option<(OwnedPathId, Option<Inode>)>
) -> Result<Cursor<Self, &'txn Self, Self::TreeCursor, OwnedPathId, Inode>, TxnErr<SanakirjaError>>
pub fn cursor_tree_next<'txn>(
&'txn self,
cursor: &mut Self::TreeCursor
) -> Result<Option<(OwnedPathId, Inode)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::TreeCursor
) -> Result<Option<(OwnedPathId, Inode)>, TxnErr<SanakirjaError>>
pub fn cursor_tree_prev<'txn>(
&'txn self,
cursor: &mut Self::TreeCursor
) -> Result<Option<(OwnedPathId, Inode)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::TreeCursor
) -> Result<Option<(OwnedPathId, Inode)>, TxnErr<SanakirjaError>>
pub fn iter_tree<'txn>(
&'txn self,
k: OwnedPathId,
v: Option<Inode>
) -> Result<Cursor<Self, &'txn Self, Self::TreeCursor, OwnedPathId, Inode>, TxnErr<SanakirjaError>>
[src]
&'txn self,
k: OwnedPathId,
v: Option<Inode>
) -> Result<Cursor<Self, &'txn Self, Self::TreeCursor, OwnedPathId, Inode>, TxnErr<SanakirjaError>>
type RevtreeCursor = Cursor
pub fn cursor_revtree<'txn>(
&'txn self,
db: &Self::Revtree,
pos: Option<(Inode, Option<OwnedPathId>)>
) -> Result<Cursor<Self, &'txn Self, Self::RevtreeCursor, Inode, OwnedPathId>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Revtree,
pos: Option<(Inode, Option<OwnedPathId>)>
) -> Result<Cursor<Self, &'txn Self, Self::RevtreeCursor, Inode, OwnedPathId>, TxnErr<SanakirjaError>>
pub fn cursor_revtree_next<'txn>(
&'txn self,
cursor: &mut Self::RevtreeCursor
) -> Result<Option<(Inode, OwnedPathId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RevtreeCursor
) -> Result<Option<(Inode, OwnedPathId)>, TxnErr<SanakirjaError>>
pub fn cursor_revtree_prev<'txn>(
&'txn self,
cursor: &mut Self::RevtreeCursor
) -> Result<Option<(Inode, OwnedPathId)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RevtreeCursor
) -> Result<Option<(Inode, OwnedPathId)>, TxnErr<SanakirjaError>>
pub fn iter_revtree<'txn>(
&'txn self,
k: Inode,
v: Option<OwnedPathId>
) -> Result<Cursor<Self, &'txn Self, Self::RevtreeCursor, Inode, OwnedPathId>, TxnErr<SanakirjaError>>
[src]
&'txn self,
k: Inode,
v: Option<OwnedPathId>
) -> Result<Cursor<Self, &'txn Self, Self::RevtreeCursor, Inode, OwnedPathId>, TxnErr<SanakirjaError>>
type Revtree = Db<Inode, UnsafePathId>
pub fn get_revtree<'txn>(
&'txn self,
key: Inode,
value: Option<PathId<'_>>
) -> Result<Option<PathId<'_>>, TxnErr<Self::TreeError>>
[src]
&'txn self,
key: Inode,
value: Option<PathId<'_>>
) -> Result<Option<PathId<'_>>, TxnErr<Self::TreeError>>
type Partials = Db<UnsafeSmallStr, Position<ChangeId>>
type PartialsCursor = Cursor
pub fn cursor_partials<'txn>(
&'txn self,
db: &Self::Partials,
pos: Option<(SmallString, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::PartialsCursor, SmallString, Position<ChangeId>>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Partials,
pos: Option<(SmallString, Option<Position<ChangeId>>)>
) -> Result<Cursor<Self, &'txn Self, Self::PartialsCursor, SmallString, Position<ChangeId>>, TxnErr<SanakirjaError>>
pub fn cursor_partials_next<'txn>(
&'txn self,
cursor: &mut Self::PartialsCursor
) -> Result<Option<(SmallString, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::PartialsCursor
) -> Result<Option<(SmallString, Position<ChangeId>)>, TxnErr<SanakirjaError>>
pub fn cursor_partials_prev<'txn>(
&'txn self,
cursor: &mut Self::PartialsCursor
) -> Result<Option<(SmallString, Position<ChangeId>)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::PartialsCursor
) -> Result<Option<(SmallString, Position<ChangeId>)>, TxnErr<SanakirjaError>>
pub fn iter_inodes(
&self
) -> Result<Cursor<Self, &Self, Self::InodesCursor, Inode, Position<ChangeId>>, TxnErr<Self::TreeError>>
[src]
&self
) -> Result<Cursor<Self, &Self, Self::InodesCursor, Inode, Position<ChangeId>>, TxnErr<Self::TreeError>>
pub fn iter_revinodes(
&self
) -> Result<Cursor<Self, &Self, Self::RevinodesCursor, Position<ChangeId>, Inode>, TxnErr<SanakirjaError>>
[src]
&self
) -> Result<Cursor<Self, &Self, Self::RevinodesCursor, Position<ChangeId>, Inode>, TxnErr<SanakirjaError>>
pub fn iter_partials<'txn>(
&'txn self,
k: &str
) -> Result<Cursor<Self, &'txn Self, Self::PartialsCursor, SmallString, Position<ChangeId>>, TxnErr<SanakirjaError>>
[src]
&'txn self,
k: &str
) -> Result<Cursor<Self, &'txn Self, Self::PartialsCursor, SmallString, Position<ChangeId>>, TxnErr<SanakirjaError>>
impl<T: Transaction> TxnT for GenericTxn<T>
[src]
pub fn hash_from_prefix(
&self,
s: &str
) -> Result<(Hash, ChangeId), HashPrefixError<Self::GraphError>>
[src]
&self,
s: &str
) -> Result<(Hash, ChangeId), HashPrefixError<Self::GraphError>>
pub fn hash_from_prefix_remote<'txn>(
&'txn self,
remote: &RemoteRef<Self>,
s: &str
) -> Result<Hash, HashPrefixError<Self::GraphError>>
[src]
&'txn self,
remote: &RemoteRef<Self>,
s: &str
) -> Result<Hash, HashPrefixError<Self::GraphError>>
pub fn load_channel(
&self,
name: &str
) -> Result<Option<ChannelRef<Self>>, TxnErr<Self::GraphError>>
[src]
&self,
name: &str
) -> Result<Option<ChannelRef<Self>>, TxnErr<Self::GraphError>>
pub fn load_remote(
&self,
name: &str
) -> Result<Option<RemoteRef<Self>>, TxnErr<Self::GraphError>>
[src]
&self,
name: &str
) -> Result<Option<RemoteRef<Self>>, TxnErr<Self::GraphError>>
type Channels = Db<UnsafeSmallStr, (u64, u64, u64, u64, u64, u64)>
type ChannelsCursor = Cursor
pub fn cursor_channels<'txn>(
&'txn self,
db: &Self::Channels,
pos: Option<(SmallString, Option<(u64, u64, u64, u64, u64, u64)>)>
) -> Result<Cursor<Self, &'txn Self, Self::ChannelsCursor, SmallString, (u64, u64, u64, u64, u64, u64)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Channels,
pos: Option<(SmallString, Option<(u64, u64, u64, u64, u64, u64)>)>
) -> Result<Cursor<Self, &'txn Self, Self::ChannelsCursor, SmallString, (u64, u64, u64, u64, u64, u64)>, TxnErr<SanakirjaError>>
pub fn cursor_channels_next<'txn>(
&'txn self,
cursor: &mut Self::ChannelsCursor
) -> Result<Option<(SmallString, (u64, u64, u64, u64, u64, u64))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::ChannelsCursor
) -> Result<Option<(SmallString, (u64, u64, u64, u64, u64, u64))>, TxnErr<SanakirjaError>>
pub fn cursor_channels_prev<'txn>(
&'txn self,
cursor: &mut Self::ChannelsCursor
) -> Result<Option<(SmallString, (u64, u64, u64, u64, u64, u64))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::ChannelsCursor
) -> Result<Option<(SmallString, (u64, u64, u64, u64, u64, u64))>, TxnErr<SanakirjaError>>
pub fn iter_channels<'txn>(
&'txn self,
start: &str
) -> Result<ChannelIterator<'txn, Self>, TxnErr<Self::GraphError>>
[src]
&'txn self,
start: &str
) -> Result<ChannelIterator<'txn, Self>, TxnErr<Self::GraphError>>
type Remotes = Db<UnsafeSmallStr, (u64, u64, u64)>
type RemotesCursor = Cursor
pub fn cursor_remotes<'txn>(
&'txn self,
db: &Self::Remotes,
pos: Option<(SmallString, Option<(u64, u64, u64)>)>
) -> Result<Cursor<Self, &'txn Self, Self::RemotesCursor, SmallString, (u64, u64, u64)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Remotes,
pos: Option<(SmallString, Option<(u64, u64, u64)>)>
) -> Result<Cursor<Self, &'txn Self, Self::RemotesCursor, SmallString, (u64, u64, u64)>, TxnErr<SanakirjaError>>
pub fn cursor_remotes_next<'txn>(
&'txn self,
cursor: &mut Self::RemotesCursor
) -> Result<Option<(SmallString, (u64, u64, u64))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RemotesCursor
) -> Result<Option<(SmallString, (u64, u64, u64))>, TxnErr<SanakirjaError>>
pub fn cursor_remotes_prev<'txn>(
&'txn self,
cursor: &mut Self::RemotesCursor
) -> Result<Option<(SmallString, (u64, u64, u64))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RemotesCursor
) -> Result<Option<(SmallString, (u64, u64, u64))>, TxnErr<SanakirjaError>>
pub fn iter_remotes<'txn>(
&'txn self,
start: &str
) -> Result<RemotesIterator<'txn, Self>, TxnErr<Self::GraphError>>
[src]
&'txn self,
start: &str
) -> Result<RemotesIterator<'txn, Self>, TxnErr<Self::GraphError>>
type Remote = Db<u64, (Hash, Merkle)>
type Revremote = Db<Hash, u64>
type Remotestates = Db<Merkle, u64>
type RemoteCursor = Cursor
pub fn cursor_remote<'txn>(
&'txn self,
db: &Self::Remote,
pos: Option<(u64, Option<(Hash, Merkle)>)>
) -> Result<Cursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Remote,
pos: Option<(u64, Option<(Hash, Merkle)>)>
) -> Result<Cursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<SanakirjaError>>
pub fn cursor_remote_next<'txn>(
&'txn self,
cursor: &mut Self::RemoteCursor
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RemoteCursor
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<SanakirjaError>>
pub fn cursor_remote_prev<'txn>(
&'txn self,
cursor: &mut Self::RemoteCursor
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<SanakirjaError>>
[src]
&'txn self,
cursor: &mut Self::RemoteCursor
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<SanakirjaError>>
pub fn rev_cursor_remote<'txn>(
&'txn self,
db: &Self::Remote,
pos: Option<(u64, Option<(Hash, Merkle)>)>
) -> Result<RevCursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<SanakirjaError>>
[src]
&'txn self,
db: &Self::Remote,
pos: Option<(u64, Option<(Hash, Merkle)>)>
) -> Result<RevCursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<SanakirjaError>>
pub fn iter_remote<'txn>(
&'txn self,
remote: &Self::Remote,
k: u64
) -> Result<Cursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<Self::GraphError>>
[src]
&'txn self,
remote: &Self::Remote,
k: u64
) -> Result<Cursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<Self::GraphError>>
pub fn iter_rev_remote<'txn>(
&'txn self,
remote: &Self::Remote,
k: Option<u64>
) -> Result<RevCursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<Self::GraphError>>
[src]
&'txn self,
remote: &Self::Remote,
k: Option<u64>
) -> Result<RevCursor<Self, &'txn Self, Self::RemoteCursor, u64, (Hash, Merkle)>, TxnErr<Self::GraphError>>
pub fn get_remote(
&mut self,
name: &str
) -> Result<Option<RemoteRef<Self>>, TxnErr<Self::GraphError>>
[src]
&mut self,
name: &str
) -> Result<Option<RemoteRef<Self>>, TxnErr<Self::GraphError>>
pub fn last_remote(
&self,
remote: &Self::Remote
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<Self::GraphError>>
[src]
&self,
remote: &Self::Remote
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<Self::GraphError>>
pub fn get_remote_state(
&self,
remote: &Self::Remote,
n: u64
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<Self::GraphError>>
[src]
&self,
remote: &Self::Remote,
n: u64
) -> Result<Option<(u64, (Hash, Merkle))>, TxnErr<Self::GraphError>>
pub fn remote_has_change(
&self,
remote: &RemoteRef<Self>,
hash: Hash
) -> Result<bool, TxnErr<Self::GraphError>>
[src]
&self,
remote: &RemoteRef<Self>,
hash: Hash
) -> Result<bool, TxnErr<Self::GraphError>>
pub fn remote_has_state(
&self,
remote: &RemoteRef<Self>,
m: Merkle
) -> Result<bool, TxnErr<Self::GraphError>>
[src]
&self,
remote: &RemoteRef<Self>,
m: Merkle
) -> Result<bool, TxnErr<Self::GraphError>>
Auto Trait Implementations
impl<T> !RefUnwindSafe for GenericTxn<T>
[src]
impl<T> !Sync for GenericTxn<T>
[src]
impl<T> Unpin for GenericTxn<T> where
T: Unpin,
[src]
T: Unpin,
impl<T> !UnwindSafe for GenericTxn<T>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,