From 96a3c5c179d8d3fff24eb2953e45f8dd15e2714c Mon Sep 17 00:00:00 2001 From: HJ Date: Sat, 3 Feb 2024 15:09:54 -0500 Subject: cleanup --- aoc2023/build/packages/pqueue/doc/pqueue4.html | 205 +++++++++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 aoc2023/build/packages/pqueue/doc/pqueue4.html (limited to 'aoc2023/build/packages/pqueue/doc/pqueue4.html') diff --git a/aoc2023/build/packages/pqueue/doc/pqueue4.html b/aoc2023/build/packages/pqueue/doc/pqueue4.html new file mode 100644 index 0000000..edcdb6e --- /dev/null +++ b/aoc2023/build/packages/pqueue/doc/pqueue4.html @@ -0,0 +1,205 @@ + + + + +Module pqueue4 + + + + +
+ +

Module pqueue4

+ +

Static Priority Queue.

+ This priority queue implementation depends on a static number of priorities + (-128 (high) to 128 (low)) so that tuple access times can be exploited for + quick in/out priority queue operations. +

Copyright © 2011-2020 Michael Truog

+ +

Version: 2.0.1 Nov 26 2020 14:55:34 + ------------------------------------------------------------------------

+

Authors: Michael Truog (mjtruog at protonmail dot com).

+ +

Description

+

Static Priority Queue.

+ This priority queue implementation depends on a static number of priorities + (-128 (high) to 128 (low)) so that tuple access times can be exploited for + quick in/out priority queue operations. This implementation was created to + avoid the slowness within the priority queue used by both RabbitMQ and Riak + (https://github.com/basho/riak_core/blob/master/src/priority_queue.erl). +

Data Types

+ +

pqueue4()

+

pqueue4() = pqueue4(any())

+ + +

pqueue4()

+

pqueue4(T) = {priority() | empty, non_neg_integer(), {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, queue:queue(T), {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}}

+ + +

priority()

+

priority() = -128..128

+ + +

Function Index

+ + + + + + + + + + + + + + + +
filter/2 +

Filter the priority queue.

+ O(N).
filter/3 +

Filter a specific priority within the priority queue.

+ O(N).
in/2 +

Append an item to the tail of the 0 priority queue.

+ O(1).
in/3 +

Append an item to the tail of a specific priority queue.

+ O(1).
is_empty/1 +

Check if the priority queue is empty.

+ O(1).
is_queue/1 +

Check if the priority queue type is as expected.

+ O(1).
len/1 +

Determine the length of a priority queue.

+ O(1).
new/0 +

Create a new priority queue.

+ O(1).
out/1 +

Take an item from the head of the priority queue.

+ O(1) amortized, O(N) worst case.
out/2 +

Take an item of a specific priority from the head of the queue.

+ O(1) amortized, O(N) worst case.
pout/1 +

Take an item from the head of the priority queue.

+ Includes the priority in the return value.
remove_unique/2 +

Remove a unique value from the priority queue with a binary predicate.

+ O(N) but smaller constant than filter/2.
remove_unique/3 +

Remove a unique value in a specific priority within the priority queue with a binary predicate.

+ O(N) but smaller constant than filter/3.
to_list/1 +

Convert the priority queue to a list.

+ O(N).
to_plist/1 +

Convert the priority queue to a list with priorities.

+ O(N).
+ +

Function Details

+ +

filter/2

+
+

filter(F::fun((any()) -> boolean()), Q::pqueue4()) -> pqueue4()

+

+

Filter the priority queue.

+ O(N)

+ +

filter/3

+
+

filter(F::fun((any()) -> boolean()), P::integer(), Q::pqueue4()) -> pqueue4()

+

+

Filter a specific priority within the priority queue.

+ O(N)

+ +

in/2

+
+

in(X::any(), Q::pqueue4()) -> pqueue4()

+

+

Append an item to the tail of the 0 priority queue.

+ O(1)

+ +

in/3

+
+

in(X::any(), P::integer(), Q::pqueue4()) -> pqueue4()

+

+

Append an item to the tail of a specific priority queue.

+ O(1)

+ +

is_empty/1

+
+

is_empty(X1::pqueue4()) -> true | false

+

+

Check if the priority queue is empty.

+ O(1)

+ +

is_queue/1

+
+

is_queue(X1::pqueue4()) -> true | false

+

+

Check if the priority queue type is as expected.

+ O(1)

+ +

len/1

+
+

len(X1::pqueue4()) -> non_neg_integer()

+

+

Determine the length of a priority queue.

+ O(1)

+ +

new/0

+
+

new() -> pqueue4()

+

+

Create a new priority queue.

+ O(1)

+ +

out/1

+
+

out(Q::pqueue4()) -> {{value, any()}, pqueue4()} | {empty, pqueue4()}

+

+

Take an item from the head of the priority queue.

+ O(1) amortized, O(N) worst case

+ +

out/2

+
+

out(P::integer(), Q::pqueue4()) -> {{value, any()}, pqueue4()} | {empty, pqueue4()}

+

+

Take an item of a specific priority from the head of the queue.

+ O(1) amortized, O(N) worst case

+ +

pout/1

+
+

pout(Q::pqueue4()) -> {{value, any(), integer()}, pqueue4()} | {empty, pqueue4()}

+

+

Take an item from the head of the priority queue.

+ Includes the priority in the return value. + O(1) amortized, O(N) worst case

+ +

remove_unique/2

+
+

remove_unique(F::fun((any()) -> boolean()), Q::pqueue4()) -> {boolean(), pqueue4()}

+

+

Remove a unique value from the priority queue with a binary predicate.

+ O(N) but smaller constant than filter/2

+ +

remove_unique/3

+
+

remove_unique(F::fun((any()) -> boolean()), P::integer(), Q::pqueue4()) -> {boolean(), pqueue4()}

+

+

Remove a unique value in a specific priority within the priority queue with a binary predicate.

+ O(N) but smaller constant than filter/3

+ +

to_list/1

+
+

to_list(Q::pqueue4()) -> list()

+

+

Convert the priority queue to a list.

+ O(N)

+ +

to_plist/1

+
+

to_plist(Q::pqueue4()) -> [{priority(), list()}]

+

+

Convert the priority queue to a list with priorities.

+ O(N)

+
+ + +

Generated by EDoc

+ + -- cgit v1.2.3