dvPluralCategoriesFor function
Which categories locale uses.
So a catalogue can be validated: a Polish catalogue missing few is a
build error rather than a string that silently falls back to other.
Implementation
Set<DVPluralCategory> dvPluralCategoriesFor(String locale) {
switch (dvLanguageOf(locale)) {
case 'ja':
case 'zh':
case 'ko':
case 'vi':
case 'th':
case 'id':
case 'ms':
case 'my':
case 'lo':
case 'km':
return <DVPluralCategory>{DVPluralCategory.other};
case 'pl':
case 'ru':
case 'uk':
return <DVPluralCategory>{
DVPluralCategory.one,
DVPluralCategory.few,
DVPluralCategory.many,
DVPluralCategory.other,
};
case 'cs':
case 'sk':
case 'lt':
return <DVPluralCategory>{
DVPluralCategory.one,
DVPluralCategory.few,
DVPluralCategory.many,
DVPluralCategory.other,
};
case 'ro':
return <DVPluralCategory>{
DVPluralCategory.one,
DVPluralCategory.few,
DVPluralCategory.other,
};
case 'ar':
return DVPluralCategory.values.toSet();
default:
return <DVPluralCategory>{DVPluralCategory.one, DVPluralCategory.other};
}
}