AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.8.2" />

.NET API 1,168,384 bytes

 StructValueConverter<T>

sealed class StructValueConverter<T> : IValueConverter<T>, IValueConverter where T : struct
using AngleSharp.Dom.Css; using System; namespace AngleSharp.Css.ValueConverters { internal sealed class StructValueConverter<T> : IValueConverter<T>, IValueConverter where T : struct { private readonly Func<ICssValue, T?> _converter; public int MinArgs => 1; public int MaxArgs => 1; public StructValueConverter(Func<ICssValue, T?> converter) { _converter = converter; } public bool TryConvert(ICssValue value, Action<T> setResult) { T? nullable = _converter(value); if (!nullable.HasValue) return false; setResult(nullable.Value); return true; } public bool Validate(ICssValue value) { return _converter(value).HasValue; } } }