-
Notifications
You must be signed in to change notification settings - Fork 220
Description
We have a lot of type aliases in ICU4X.
Why should we mark the new type aliases (which were previously their own structs) as deprecated? Why not just embrace that they each represent their own CLDR calendar?
https://github.com/unicode-org/icu4x/blob/main/components/calendar/src/cal/mod.rs
Alternatively, I would maybe be slightly more comfortable if we made them newtypes with a private inner field, so that we can change the implementations again in the future. It means that we'd need to delegate a bunch of trait impls, which is annoying, but that's just how Rust works. On the bright side, it would resolve issues where we have bespoke ICU4X functionality that we don't want on the public trait, like CalendarAlgorithm (#6960) and reference year (#6959).