Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

<format>: Investigate deriving _Grapheme_Extend_ranges from other tables #3696

Open
StephanTLavavej opened this issue May 12, 2023 · 0 comments
Labels
format C++20/23 format performance Must go faster

Comments

@StephanTLavavej
Copy link
Member

For followup after we merge #3656.

@cpplearner:

  • _Grapheme_Extend_ranges represents code points with the Unicode property Grapheme_Extend=Yes.
    • Characters in these ranges are escaped unless they immediately follow an unescaped character. ([format.string.escaped]/(2.2.1.2.2))
    • It would be more space efficient to reuse the existing data for Grapheme_Cluster_Break: Grapheme_Extend=Yes is Grapheme_Cluster_Break=Extend minus Emoji_Modifier=Yes, and Emoji_Modifier=Yes is just 1F3FB..1F3FF. I chose to define a new array for simplicity.

@barcharcraz:

This is a fairly decent amount of data. We should at least open an issue to derive these from the other tables.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
format C++20/23 format performance Must go faster
Projects
None yet
Development

No branches or pull requests

1 participant