token-string 0.8.3

Short (up to 65,535 bytes) immutable strings to e.g. parse tokens, implemented in Rust. These are sometimes called 'German Strings', because Germans have written the paper mentioning them.
Documentation
// SPDX-FileCopyrightText: Copyright (C) 2024 Roland Csaszar
// SPDX-License-Identifier: MPL-2.0
//
// Project:  token-string
// File:     lib.rs
// Date:     16.Nov.2024
// =============================================================================
#![doc = include_str!("../README.md")]
//!
// This is needed for `cargo doc` to get the formatting right.
//! ---
//! The documentation of the string itself is at [`TokenString`].
//!
//! To concatenate strings there is a [`Builder`] and the convenience macro
//! [`crate::concat`].

#![no_std]
#![feature(doc_cfg)]
#![cfg_attr(feature = "pattern", feature(pattern))]

mod builder;
mod error;
mod string;
mod string_ptr;

// Exports.
pub use builder::{Builder, BuilderIter, Collect, Concat};
pub use error::TkStrError;
pub use string::{
	EMPTY,
	MAX_LENGTH,
	MAX_LENGTH_SMALL,
	TokenString,
	TokenStringIter,
	TokenStringIterOwn,
};
// Internal use
pub(crate) use string::{MAX_LENGTH_SMALL_ADD1, PREFIX_LENGTH};
pub(crate) use string_ptr::StringPtr;