Open Bug 1824677 Opened 2 years ago Updated 6 months ago

Migrate Unicode properties and casing from ICU4C to ICU4X

Categories

(Core :: Internationalization, task)

task

Tracking

()

People

(Reporter: hsivonen, Unassigned)

References

(Depends on 1 open bug, Blocks 1 open bug)

Details

Migrate Unicode properties and casing from ICU4C to ICU4X. Patch out the relevant parts of ICU4C so as not to carry the data twice in libxul.

There are two aspects to this:

  1. Code that goes through mozilla::intl::UnicodeProperties. This is a matter of routing the properties visible from the entry points in the header file to ICU4X instead.
  2. Direct calls to ICU4C under js/src/irregexp/imported/. These include:

The 7 functions listed above should be possible to abstract over ICU4C vs. ICU4X with a level of naming indirection that hopefully would be OK to upstream. The usage of icu::UnicodeSet and its interaction with binary properties needs more investigation to see how easy it would be to swap in ICU4XCodePointSetBuilder and ICU4XCodePointSetData.

I believe the numeric values for enumerated property values are consistent between ICU4C and ICU4X.

Depends on: 1907842
You need to log in before you can comment on or make changes to this bug.