// Copyright © WireMock.Net using AnyOfTypes; using WireMock.Models; namespace WireMock.Extensions; /// /// Some extensions for AnyOf. /// public static class AnyOfExtensions { /// /// Gets the pattern as string value. /// /// AnyOf type /// The string value public static string GetPattern(this AnyOf value) { return value.IsFirst ? value.First : value.Second.Pattern; } /// /// Gets the patterns. /// /// AnyOf types /// string values public static string[] GetPatterns(this AnyOf[] values) { return values.Select(GetPattern).ToArray(); } /// /// Converts a string-patterns to AnyOf patterns. /// /// The string patterns /// The AnyOf patterns public static AnyOf[] ToAnyOfPatterns(this IEnumerable patterns) { return patterns.Select(p => p.ToAnyOfPattern()).ToArray(); } /// /// Converts a string-pattern to AnyOf pattern. /// /// The string pattern /// The AnyOf pattern public static AnyOf ToAnyOfPattern(this string pattern) { return new AnyOf(pattern); } }