[−][src]Crate lazy_string_replace
This crate allows you to Display::fmt
strings that include replacements, without actually doing any replacement until format-time and totally avoiding allocation.
This is useful when you do .replace
and then immediately pass the result to format!
- it will prevent the intermediate allocation from happening. You can even use the result in another .lazy_replace
call and it will still avoid allocation, although it may do the inner replacement multiple times. The work of memoizing the result of Display::fmt
to avoid duplicating work can be done in a generic way by an external crate and requires allocation, so is out of the scope of this crate.
Modules
pattern | A vendored version of |
Structs
ReplacedString | A lazily-replaced string - no work is done until you call |
Traits
LazyReplace | A convenience trait to allow you to call |