protocol
heapp¶
Heap protocol. Key-value pairs are represented as Key-Value.
Author: Richard O’Keefe; adapted to Logtalk by Paulo Moura and Victor Lagerkvist.
Version: 1.01
Date: 2010/11/13
Compilation flags:
staticDependencies:
(none)
Remarks:
(none)
Public predicates¶
insert/4¶
Inserts the new pair into a heap, returning the updated heap.
Compilation flags:
staticTemplate:
insert(Key,Value,Heap,NewHeap)Mode and number of proofs:
insert(+key,+value,+heap,-heap) - oneinsert_all/3¶
Inserts a list of pairs into a heap, returning the updated heap.
Compilation flags:
staticTemplate:
insert_all(List,Heap,NewHeap)Mode and number of proofs:
insert_all(@list(pairs),+heap,-heap) - onedelete/4¶
Deletes and returns the top pair in a heap returning the updated heap.
Compilation flags:
staticTemplate:
delete(Heap,TopKey,TopValue,NewHeap)Mode and number of proofs:
delete(+heap,?key,?value,-heap) - zero_or_onemerge/3¶
Merges two heaps.
Compilation flags:
staticTemplate:
merge(Heap1,Heap2,NewHeap)Mode and number of proofs:
merge(+heap,+heap,-heap) - oneempty/1¶
True if the heap is empty.
Compilation flags:
staticTemplate:
empty(Heap)Mode and number of proofs:
empty(@heap) - zero_or_onesize/2¶
Returns the number of heap elements.
Compilation flags:
staticTemplate:
size(Heap,Size)Mode and number of proofs:
size(+heap,?integer) - zero_or_oneas_list/2¶
Returns the current set of pairs in the heap as a list, sorted into ascending order of the keys.
Compilation flags:
staticTemplate:
as_list(Heap,List)Mode and number of proofs:
as_list(+heap,-list) - oneas_heap/2¶
Constructs a heap from a list of pairs.
Compilation flags:
staticTemplate:
as_heap(List,Heap)Mode and number of proofs:
as_heap(+list,-heap) - onetop/3¶
Returns the top pair in the heap. Fails if the heap is empty.
Compilation flags:
staticTemplate:
top(Heap,TopKey,TopValue)Mode and number of proofs:
top(+heap,?key,?value) - zero_or_onetop_next/5¶
Returns the top pair and the next pair in the heap. Fails if the heap does not have at least two elements.
Compilation flags:
staticTemplate:
top_next(Heap,TopKey,TopValue,NextKey,NextValue)Mode and number of proofs:
top_next(+heap,?key,?value,?key,?value) - zero_or_oneProtected predicates¶
(none)
Private predicates¶
(none)