feat: implement efficient conversion from String #128
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previous to this changeset, the implementation of
FromStr for Schedule
allocated internally.The same was true for
TryFrom<&str> for Schedule
,which forwarded to the former.
Library users had no way to prevent the unnecessary
double allocation where a heap-allocated
String
representation is already available,
whose ownership could be passed into the
Schedule
.This changeset implements efficient conversion
from
Cow<'_, str>
,String
and&str
.Borrowed expressions are only heap-allocated
if parsing succeeds.
Ownership of owned expressions is passed into
the
Schedule
, circumventing the previous doubleallocation.
Implements #127