diff options
author | Kim Alvefur <zash@zash.se> | 2022-12-12 07:10:54 +0100 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2022-12-12 07:10:54 +0100 |
commit | 080d7974bf0c1da8a1c0578d67c3172facc9d719 (patch) | |
tree | 838d6904e47ab8681928b37701ff4f1c6e89184a /teal-src/net/http/parser.d.tl | |
parent | baff85a52c5fda705e8b3699410c770f015d89ab (diff) | |
parent | c916ce76ee89dca32e7e653dff1ade4732462efc (diff) | |
download | prosody-080d7974bf0c1da8a1c0578d67c3172facc9d719.tar.gz prosody-080d7974bf0c1da8a1c0578d67c3172facc9d719.zip |
Merge 0.12->trunk
Diffstat (limited to 'teal-src/net/http/parser.d.tl')
-rw-r--r-- | teal-src/net/http/parser.d.tl | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/teal-src/net/http/parser.d.tl b/teal-src/net/http/parser.d.tl new file mode 100644 index 00000000..1cd6ccf4 --- /dev/null +++ b/teal-src/net/http/parser.d.tl @@ -0,0 +1,58 @@ +local record httpstream + feed : function(httpstream, string) +end + +local type sink_cb = function () + +local record httppacket + enum http_method + "HEAD" + "GET" + "POST" + "PUT" + "DELETE" + "OPTIONS" + -- etc + end + method : http_method + record url_details + path : string + query : string + end + url : url_details + path : string + enum http_version + "1.0" + "1.1" + end + httpversion : http_version + headers : { string : string } + body : string | boolean + body_sink : sink_cb + chunked : boolean + partial : boolean +end + +local enum error_conditions + "cancelled" + "connection-closed" + "certificate-chain-invalid" + "certificate-verify-failed" + "connection failed" + "invalid-url" + "unable to resolve service" +end + +local type success_cb = function (httppacket) +local type error_cb = function (error_conditions) + +local enum stream_mode + "client" + "server" +end + +local record lib + new : function (success_cb, error_cb, stream_mode) : httpstream +end + +return lib |