AngleSharp by AngleSharp

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

.NET API 1,230,848 bytes

 LastColumnSelector

The nth-last-column selector.
using AngleSharp.Css; using AngleSharp.Dom.Html; using System; namespace AngleSharp.Dom.Css { internal sealed class LastColumnSelector : ChildSelector { public LastColumnSelector() : base(PseudoClassNames.NthLastColumn) { } public override bool Match(IElement element) { IElement parentElement = element.ParentElement; if (parentElement != null) { int num = Math.Sign(_step); int num2 = 0; for (int num3 = parentElement.ChildNodes.Length - 1; num3 >= 0; num3--) { IHtmlTableCellElement htmlTableCellElement = parentElement.ChildNodes[num3] as IHtmlTableCellElement; if (htmlTableCellElement != null) { int columnSpan = htmlTableCellElement.ColumnSpan; num2 += columnSpan; if (htmlTableCellElement == element) { int num4 = num2 - _offset; int num5 = 0; while (num5 < columnSpan) { if (num4 == 0 || (Math.Sign(num4) == num && num4 % _step == 0)) return true; num5++; num4--; } return false; } } } } return false; } } }