AngleSharp by AngleSharp

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

.NET API 1,218,560 bytes

 Selectors

A list of selectors, which is the basis for CompoundSelector and SelectorGroup.
using AngleSharp.Css; using System.Collections; using System.Collections.Generic; namespace AngleSharp.Dom.Css { internal abstract class Selectors : IEnumerable<ISelector>, IEnumerable, IStyleFormattable { protected readonly List<ISelector> selectors; public Priority Specifity { get { Priority priority = default(Priority); for (int i = 0; i < selectors.Count; i++) { priority += selectors[i].Specifity; } return priority; } } public string Text => ToCss(); public int Length => selectors.Count; public ISelector this[int index] { get { return selectors[index]; } set { selectors[index] = value; } } public Selectors() { selectors = new List<ISelector>(); } public void Add(ISelector selector) { selectors.Add(selector); } public void Remove(ISelector selector) { selectors.Remove(selector); } public void Clear() { selectors.Clear(); } public IEnumerator<ISelector> GetEnumerator() { return selectors.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } public abstract string ToCss(); public string ToCss(IStyleFormatter formatter) { return ToCss(); } } }