operator [] method

  1. @override
Localization operator [](
  1. Object? locale
)
override

Retrieve the Localization corresponding to locale.

If locale is not an instance of Locale, fallbackLocale is returned instead. If locale is not supported, locale.language is used. If locale.language is not supported, fallbackLocale is returned instead.

Implementation

@override
Localization operator [](Object? locale) {
  if (locale == null) {
    return internalMap[fallbackLocale]!;
  }
  if (locale is Locale) {
    if (isLocaleSupported(locale)) {
      return internalMap[locale]!;
    } else if (isLanguageSupported(locale.language)) {
      return internalMap[locale.language]!;
    }
  }

  return internalMap[fallbackLocale]!;
}