File

teal-src/util/queue.d.tl @ 12876:0ed24f48b6a6

util.crypto: Preemptively silence 'strict-prototypes' warning With `gcc-12 -Wstrict-prototypes` the following warning is shown: crypto.c:43:13: warning: function declaration isn't a prototype [-Wstrict-prototypes] 43 | static BIO* new_memory_BIO() { | ^~~~~~~~~~~~~~
author Kim Alvefur <zash@zash.se>
date Tue, 31 Jan 2023 16:27:55 +0100
parent 12622:ef59fb975d3e
line wrap: on
line source

local record lib
	record queue<T>
		size : integer
		count : function (queue<T>) : integer
		enum push_errors
			"queue full"
		end

		push : function (queue<T>, T) : boolean, push_errors
		pop : function (queue<T>) : T
		peek : function (queue<T>) : T
		replace : function (queue<T>, T) : boolean, push_errors
		type iterator = function (T, integer) : integer, T
		items : function (queue<T>) : iterator, T, integer
		type consume_iter = function (queue<T>) : T
		consume : function (queue<T>) : consume_iter
	end

	new : function<T> (size:integer, allow_wrapping:boolean) : queue<T>
end
return lib;