AngleSharp by AngleSharp

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

 NodeList

Represents a list of Node instances or nodes.
using System.Collections; using System.Collections.Generic; using System.IO; namespace AngleSharp.Dom.Collections { internal sealed class NodeList : INodeList, IEnumerable<INode>, IEnumerable, IMarkupFormattable { private readonly List<Node> _entries; internal static readonly NodeList Empty = new NodeList(); public Node this[int index] { get { return _entries[index]; } set { _entries[index] = value; } } INode INodeList.this[int index] { get { return this[index]; } } public int Length => _entries.Count; internal NodeList() { _entries = new List<Node>(); } internal void Add(Node node) { _entries.Add(node); } internal void AddRange(NodeList nodeList) { _entries.AddRange(nodeList._entries); } internal void Insert(int index, Node node) { _entries.Insert(index, node); } internal void Remove(Node node) { _entries.Remove(node); } internal void RemoveAt(int index) { _entries.RemoveAt(index); } internal bool Contains(Node node) { return _entries.Contains(node); } public void ToHtml(TextWriter writer, IMarkupFormatter formatter) { for (int i = 0; i < _entries.Count; i++) { _entries[i].ToHtml(writer, formatter); } } public IEnumerator<INode> GetEnumerator() { return _entries.GetEnumerator(); } IEnumerator IEnumerable.GetEnumerator() { return _entries.GetEnumerator(); } } }