String has some new methods not supported by inlinable_string::StringExt trait, and some of them should be implemented using unsafe to perform well (for example, insert_str and retain).
Of course they can be implemented without unsafe (and they would be slow).
However, I think inlinable_string crate should implement and test them in some way (possibly using unsafe), before users try to implement by themselves.
Use of unsafe should be gathered to upstream crates as possible, rather than written by every downstream user.
Here is a list of missing methods:
They can be implemented to InlineString without breaking changes.
However, adding them to StringExt is breaking change, and it is better to be done at once.
Stringhas some new methods not supported byinlinable_string::StringExttrait, and some of them should be implemented usingunsafeto perform well (for example,insert_strandretain).Of course they can be implemented without
unsafe(and they would be slow).However, I think
inlinable_stringcrate should implement and test them in some way (possibly usingunsafe), before users try to implement by themselves.Use of
unsafeshould be gathered to upstream crates as possible, rather than written by every downstream user.Here is a list of missing methods:
They can be implemented to
InlineStringwithout breaking changes.However, adding them to
StringExtis breaking change, and it is better to be done at once.