mnesia_rocksdb/doc/mrdb_index.md
2025-10-11 00:09:54 +02:00

4.8 KiB

Module mrdb_index

Data Types

index_value()


index_value() = any()

iterator_action()


iterator_action() = mrdb:iterator_action()

ix_iterator()


ix_iterator() = #mrdb_ix_iter{i = mrdb:mrdb_iterator(), type = set | bag, sub = pid() | mrdb:db_ref()}

object()


object() = tuple()

Function Index

fold/4
index_ref/2
iterator/2
iterator_close/1
iterator_move/2
rev_fold/4
select/3
select/4
select_reverse/3
select_reverse/4
with_iterator/3

Function Details

fold/4


fold(Tab::mrdb:ref_or_tab(), IxPos::mrdb:index_position(), FoldFun::fun((index_value(), object() | [], Acc) -> Acc), Acc) -> Acc
  • Acc = any()

index_ref/2


index_ref(Tab::mrdb:ref_or_tab(), Ix::mrdb:index_position()) -> mrdb:db_ref()

iterator/2


iterator(Tab::mrdb:ref_or_tab(), IxPos::mrdb:index_position()) -> {ok, ix_iterator()} | {error, term()}

iterator_close/1


iterator_close(Mrdb_ix_iter::ix_iterator()) -> ok

iterator_move/2


iterator_move(Mrdb_ix_iter::ix_iterator(), Dir::iterator_action()) -> {ok, index_value(), object()} | {error, term()}

rev_fold/4


rev_fold(Tab::mrdb:ref_or_tab(), IxPos::mrdb:index_position(), FoldFun::fun((index_value(), object() | [], Acc) -> Acc), Acc) -> Acc
  • Acc = any()

select/3

select(Tab, Ix, MS) -> any()

select/4

select(Tab, Ix, MS, Limit) -> any()

select_reverse/3

select_reverse(Tab, Ix, MS) -> any()

select_reverse/4

select_reverse(Tab, Ix, MS, Limit) -> any()

with_iterator/3


with_iterator(Tab::mrdb:ref_or_tab(), IxPos::mrdb:index_position(), Fun::fun((ix_iterator()) -> Res)) -> Res