xmpp-rs-mirror/jid
Emmanuel Gil Peyrot 2ca4a61428 jid: Refactor all three JID types
The main reason for this refactor was to make common operations simpler,
for instance formatting a JID is now a simple clone of a String.

Instead of having three different String for each of node, domain and
resource, we now have a single String with offsets pointing to where the
at and slash are (if they are present).

This also reduces the size of a FullJid from 72 bytes to 32 bytes on
64-bit platforms (less so on 32-bit), and BareJid from 48 bytes to
32 bytes.  Jid is still 40 bytes instead of 32, but that can be improved
in a future version where InnerJid has been inlined into each struct.
2023-06-20 17:46:29 +02:00
..
src jid: Refactor all three JID types 2023-06-20 17:46:29 +02:00
Cargo.toml jid: Refactor all three JID types 2023-06-20 17:46:29 +02:00
CHANGELOG.md JID stringprep errors return a JidParseError instead of panic (#84) 2023-06-07 17:29:00 +02:00
LICENSE
README.md

jid

What's this?

A crate which provides a struct Jid for Jabber IDs. It's used in xmpp-rs but other XMPP libraries can of course use this.

What license is it under?

MPL-2.0 or later, see the LICENSE file.

Notes

This library does not yet implement RFC7622.