Add ReadOnlySpan<char>based format AppendFormat for Utf16ValueStringBuilder#68
Merged
neuecc merged 3 commits intoCysharp:masterfrom Jan 4, 2022
Merged
Add ReadOnlySpan<char>based format AppendFormat for Utf16ValueStringBuilder#68neuecc merged 3 commits intoCysharp:masterfrom
neuecc merged 3 commits intoCysharp:masterfrom
Conversation
Member
|
Does the String code also go through ReadOnlySpan? |
Contributor
Author
|
I converted All of FormatParser to use Span inputs for everything. So it will likely have an impact. I'll have to look at duplicating the the FormatParser completely for a string and ReadOnlySpan version to resolve this. Not ideal for code maintainability but it is what it is. |
Contributor
Author
|
I think considerations should also start to be made for the unity 2021.2 and later which should support fast span now since they have moved to a newer version of mono with .net standard 2.1 support. |
cc595d1 to
278f6f3
Compare
Contributor
Author
|
Ok new changes should be good to go! Edit: |
Member
|
thanks! |
ThangwLee
pushed a commit
to WolffunGame/ZString
that referenced
this pull request
May 26, 2023
Add ReadOnlySpan<char>based format AppendFormat for Utf16ValueStringBuilder
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This pull requests creates a ReadOnlySpan based AppendFormat for Utf16 only, this is for resolving #62
I attempted to implement a ReadOnlySpan based api for Utf8 but i found it too invasive to implement needing a lot of code duplication and rewriting of the core FormatParser specifically for utf-8 so that is not included. And without these deeper changes there would not be any performance improvement with including it so i've opted not to implement it, I will leave it up to someone else to try to implement it.
I've also not implemented a PreparedFormat api for this either, as the main purpose of this is to chain string builders together without creating a new string between them.