Annotate

teal-src/util/queue.d.tl @ 12693:7c5afbdcbc77

util.crypto: New wrapper for some operations in OpenSSL's libcrypto Specifically, ED25519 key generation/import/export, sign/verify operations, and AES encrypt/decrypt.
author Matthew Wild <mwild1@gmail.com>
date Fri, 24 Jun 2022 16:56:16 +0100
parent 12622:ef59fb975d3e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12622
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local record lib
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 record queue<T>
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 size : integer
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 count : function (queue<T>) : integer
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 enum push_errors
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 "queue full"
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 end
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 push : function (queue<T>, T) : boolean, push_errors
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 pop : function (queue<T>) : T
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 peek : function (queue<T>) : T
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 replace : function (queue<T>, T) : boolean, push_errors
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 type iterator = function (T, integer) : integer, T
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 items : function (queue<T>) : iterator, T, integer
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 type consume_iter = function (queue<T>) : T
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 consume : function (queue<T>) : consume_iter
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 end
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 new : function<T> (size:integer, allow_wrapping:boolean) : queue<T>
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 end
ef59fb975d3e util.queue: Add Teal interface description
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 return lib;