< Summary

Information
Class: MyNet.Globalization.Localization.Policies.CultureFallbackPolicies
Assembly: MyNet.Globalization
File(s): https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.Globalization/Localization/Policies/CultureFallbackPolicies.cs
Tag: 323_28699572109
Line coverage
100%
Covered lines: 4
Uncovered lines: 0
Coverable lines: 4
Total lines: 37
Line coverage: 100%
Branch coverage
100%
Covered branches: 2
Total branches: 2
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.cctor()100%11100%
GetFallback(...)100%11100%
GetFallback(...)100%22100%

File(s)

https://raw.githubusercontent.com/sandre58/MyNet/85372080fe102cd9ee155ceab49ae000e7f66103/src/MyNet.Globalization/Localization/Policies/CultureFallbackPolicies.cs

#LineLine coverage
 1// -----------------------------------------------------------------------
 2// <copyright file="CultureFallbackPolicies.cs" company="Stéphane ANDRE">
 3// Copyright (c) Stéphane ANDRE. All rights reserved.
 4// </copyright>
 5// -----------------------------------------------------------------------
 6
 7using System.Globalization;
 8
 9namespace MyNet.Globalization.Localization.Policies;
 10
 11/// <summary>
 12/// Provides built-in <see cref="ICultureFallbackPolicy"/> implementations.
 13/// </summary>
 14public static class CultureFallbackPolicies
 15{
 16    /// <summary>
 17    /// Gets a policy that never falls back: returns <c>null</c> for any culture.
 18    /// </summary>
 1619    public static ICultureFallbackPolicy None { get; } = new NonePolicy();
 20
 21    /// <summary>
 22    /// Gets a policy that walks up the culture hierarchy:
 23    /// <c>en-US</c> → <c>en</c> → <see cref="CultureInfo.InvariantCulture"/>.
 24    /// </summary>
 1625    public static ICultureFallbackPolicy ParentCulture { get; } = new ParentCulturePolicy();
 26
 27    private sealed class NonePolicy : ICultureFallbackPolicy
 28    {
 629        public CultureInfo? GetFallback(CultureInfo culture) => null;
 30    }
 31
 32    private sealed class ParentCulturePolicy : ICultureFallbackPolicy
 33    {
 229234        public CultureInfo? GetFallback(CultureInfo culture) => culture.Equals(CultureInfo.InvariantCulture) ? null : cu
 35    }
 36}
 37