| commit | cb35228a3c253d2335dfe70b41c676d10e56fffe | [log] [tgz] |
|---|---|---|
| author | Laurențiu Nicola <lnicola@users.noreply.github.com> | Mon Sep 15 09:10:02 2025 +0300 |
| committer | GitHub <noreply@github.com> | Mon Sep 15 09:10:02 2025 +0300 |
| tree | b5482542df1dff5a3afa3ccd8a818b87d925c9b1 | |
| parent | 5ffc90069f545c0444447cd08c2a29c6abb97fbb [diff] | |
| parent | 484153df602ec3dfc4feb45ff110c915fb21e79d [diff] |
Merge pull request #99 from alexheretic/fix-lints Fix lints / fix CI
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.
Minimal Supported Rust Version: latest stable.
Bumping MSRV is not considered a semver-breaking change.