AngleSharp by Florian Rappl

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

.NET API 1,208,832 bytes

 Attr

sealed class Attr : IAttr, IEquatable<IAttr>
Represents a generic node attribute.
using AngleSharp.Dom.Collections; using AngleSharp.Html; using System; using System.Diagnostics; namespace AngleSharp.Dom { [DebuggerStepThrough] internal sealed class Attr : IAttr, IEquatable<IAttr> { private readonly string _localName; private readonly string _prefix; private readonly string _namespace; private string _value; private NamedNodeMap _container; internal NamedNodeMap Container { get { return _container; } set { _container = value; } } public string Prefix => _prefix; public bool IsId { get { if (_prefix == null) return string.Equals(_localName, AttributeNames.Id, StringComparison.OrdinalIgnoreCase); return false; } } public bool Specified => !string.IsNullOrEmpty(_value); public string Name { get { if (_prefix != null) return _prefix + ":" + _localName; return _localName; } } public string Value { get { return _value; } set { string value2 = _value; _value = value; if (_container != null) _container.RaiseChangedEvent(this, value, value2); } } public string LocalName => _localName; public string NamespaceUri => _namespace; internal Attr(string localName) : this(localName, string.Empty) { } internal Attr(string localName, string value) { _localName = localName; _value = value; } internal Attr(string prefix, string localName, string value, string namespaceUri) { _prefix = prefix; _localName = localName; _value = value; _namespace = namespaceUri; } public bool Equals(IAttr other) { if (string.Equals(Prefix, other.Prefix, StringComparison.Ordinal) && string.Equals(NamespaceUri, other.NamespaceUri, StringComparison.Ordinal)) return string.Equals(Value, other.Value, StringComparison.Ordinal); return false; } public override int GetHashCode() { int num = 1; num = num * 31 + _localName.GetHashCode(); num = num * 31 + _value.GetHashCode(); num = num * 31 + (_namespace ?? "").GetHashCode(); return num * 31 + (_prefix ?? "").GetHashCode(); } } }