File

teal-src/util/promise.d.tl @ 12918:ed20555f163a

util.sasl.oauthbearer: Fix traceback on authz in unexpected format E.g. if you were to just pass "username" without @hostname, the split will return nil, "username" and the nil gets passed to saslprep() and it does not like that.
author Kim Alvefur <zash@zash.se>
date Thu, 02 Mar 2023 14:37:46 +0100
parent 12612:588b1d175838
line wrap: on
line source


local record lib
	type resolve_func = function (any)
	type promise_body = function (resolve_func, resolve_func)

	record Promise<A, B>
		type on_resolved = function (A) : any
		type on_rejected = function (B) : any
		next : function (Promise, on_resolved, on_rejected) : Promise<any, any>
	end

	new : function (promise_body) : Promise
	resolve : function (any) : Promise
	reject : function (any) : Promise
	all : function ({ Promise }) : Promise
	all_settled : function ({ Promise }) : Promise
	race : function ({ Promise }) : Promise
	try : function
	is_promise : function(any) : boolean
end

return lib