| Crates.io | smol_strc |
| lib.rs | smol_strc |
| version | 0.3.5 |
| created_at | 2025-11-10 15:27:56.78617+00 |
| updated_at | 2026-01-10 19:11:15.174586+00 |
| description | smol_str forks, replace Arc with Rc |
| homepage | |
| repository | https://github.com/A4-Tacks/smol_strc |
| max_upload_size | |
| id | 1925702 |
| size | 100,402 |
[!IMPORTANT] This crate is a fork of
smol_str, And publish it again assmol_strcReplacing
ArcwithRcto improve single threaded performanceIndependently maintained, but patches may be pulled from the source repo
After this line is the original README
A SmolStr is a string type that has the following properties:
size_of::<SmolStr>() == 24 (therefore == size_of::<String>() on 64 bit platforms)Clone is O(1)WS (see src/lib.rs). Such strings consist
solely of consecutive newlines, followed by consecutive spacesSmolStr can be explicitly created from a &'static str without allocationUnlike String, however, SmolStr is immutable. The primary use case for
SmolStr is a good enough default storage for tokens of typical programming
languages. Strings consisting of a series of newlines, followed by a series of
whitespace are a typical pattern in computer programs because of indentation.
Note that a specialized interner might be a better solution for some use cases.
Run criterion benches with
cargo bench --bench \* -- --quick
Minimal Supported Rust Version: latest stable.
Bumping MSRV is not considered a semver-breaking change.