Software / code / prosody
Annotate
teal-src/util/ringbuffer.d.tl @ 11640:51598e46e136
util.stanza: Simplify and make pretty-printing look nicer
I've had this color theme in a local debug module for some time and I
quite like it. The colors are from the XMPP logo.
Removes extra XML serialization implementation in favor of the standard
one. Also removes recursive str=str..more string building.
The new two-level gsub has the accumulator in C space so shouldn't be
too bad. The inner gsub calls use no callback, so should be fast and
not create all that much garbage.
No serious benchmarking has been done, but who cares if it looks nice?
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sat, 07 Nov 2020 22:09:46 +0100 |
| 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 |