mirror of
https://source.quilibrium.com/quilibrium/ceremonyclient.git
synced 2024-12-30 18:35:18 +00:00
82 lines
1.7 KiB
Plaintext
82 lines
1.7 KiB
Plaintext
|
define
|
||
|
a-c:{(#3,RANGEKEYUNSET,@5) (#2,RANGEKEYSET,@5,apples) (#1,RANGEKEYSET,@3,bananas)}
|
||
|
c-d:{(#4,RANGEKEYSET,@3,bananas)}
|
||
|
d-e:{(#4,RANGEKEYSET,@3,bananas) (#4,RANGEKEYSET,@1,pineapple)}
|
||
|
----
|
||
|
|
||
|
# Iterating with logical defragmentation should combine [a,c) and [c,d)
|
||
|
# fragments.
|
||
|
|
||
|
iter
|
||
|
first
|
||
|
next
|
||
|
next
|
||
|
last
|
||
|
prev
|
||
|
prev
|
||
|
----
|
||
|
first a-d:{(#1,RANGEKEYSET,@3,bananas)}
|
||
|
next d-e:{(#4,RANGEKEYSET,@3,bananas) (#4,RANGEKEYSET,@1,pineapple)}
|
||
|
next .
|
||
|
last d-e:{(#4,RANGEKEYSET,@3,bananas) (#4,RANGEKEYSET,@1,pineapple)}
|
||
|
prev a-d:{(#4,RANGEKEYSET,@3,bananas)}
|
||
|
prev .
|
||
|
|
||
|
# Test defragmenting in both directions at seek keys.
|
||
|
|
||
|
define
|
||
|
a-f:{(#3,RANGEKEYUNSET,@5) (#2,RANGEKEYSET,@5,apples) (#1,RANGEKEYSET,@3,bananas)}
|
||
|
f-h:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
h-p:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
p-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
----
|
||
|
|
||
|
iter
|
||
|
seekge b
|
||
|
prev
|
||
|
seekge b
|
||
|
next
|
||
|
seeklt d
|
||
|
next
|
||
|
seeklt d
|
||
|
prev
|
||
|
----
|
||
|
seekge b a-t:{(#1,RANGEKEYSET,@3,bananas)}
|
||
|
prev .
|
||
|
seekge b a-t:{(#1,RANGEKEYSET,@3,bananas)}
|
||
|
next .
|
||
|
seeklt d a-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
next .
|
||
|
seeklt d a-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
prev .
|
||
|
|
||
|
iter
|
||
|
seeklt d
|
||
|
next
|
||
|
prev
|
||
|
----
|
||
|
seeklt d a-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
next .
|
||
|
prev a-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
|
||
|
# Test next-ing and prev-ing around seek keys.
|
||
|
|
||
|
define
|
||
|
a-f:{(#3,RANGEKEYUNSET,@5) (#2,RANGEKEYSET,@5,apples) (#1,RANGEKEYSET,@3,bananas)}
|
||
|
f-h:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
h-p:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
p-t:{(#3,RANGEKEYSET,@3,bananas)}
|
||
|
t-z:{(#4,RANGEKEYSET,@2,oranges)}
|
||
|
----
|
||
|
|
||
|
iter
|
||
|
seekge r
|
||
|
prev
|
||
|
next
|
||
|
next
|
||
|
----
|
||
|
seekge r a-t:{(#1,RANGEKEYSET,@3,bananas)}
|
||
|
prev .
|
||
|
next a-t:{(#1,RANGEKEYSET,@3,bananas)}
|
||
|
next t-z:{(#4,RANGEKEYSET,@2,oranges)}
|