Software /
code /
prosody
Annotate
teal-src/util/ringbuffer.d.tl @ 12714:82bca7191f13
util.crypto: Use stack space buffers
Removes assumption that LUAL_BUFFERSIZE is known at pre-processing time,
which it is not in Lua 5.3 and 5.4, where it is a computed macro based
on sizeof.
Allocation of stack space is safer and faster, no need to worry about
luaL_prepbuffer failing to allocate memory and skipping free()
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 11 Jul 2022 17:01:55 +0200 |
parent | 11578:dfc5d8f6788e |
rev | line source |
---|---|
11578
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 local record lib |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 record ringbuffer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 find : function (ringbuffer, string) : integer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 discard : function (ringbuffer, integer) : boolean |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 read : function (ringbuffer, integer, boolean) : string |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 readuntil : function (ringbuffer, string) : string |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 write : function (ringbuffer, string) : integer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 size : function (ringbuffer) : integer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 length : function (ringbuffer) : integer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 sub : function (ringbuffer, integer, integer) : string |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 byte : function (ringbuffer, integer, integer) : integer... |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 free : function (ringbuffer) : integer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 end |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 new : function (integer) : ringbuffer |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 end |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 return lib |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 |
dfc5d8f6788e
teal: Add type spec for util.ringbuffer
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 |