// User has 'en' as default locale, but he works from Russia final fallbackLocale = 'ru'; Future<Duration> parseText(String userText) async => // Try to parse user text await _parseText(userText) ?? // Try to parse with 'ru' locale if default parsing failed await Intl.withLocale(fallbackLocale, () => _parseText(userText)); // This is actual parser Future<Duration> _parseText(String userText) { // ... }