zzzprojects / html-agility-pack

Html Agility Pack (HAP) is a free and open-source HTML parser written in C# to read/write DOM and supports plain XPATH or XSLT. It is a .NET code library that allows you to parse "out of the web" HTML files.
https://html-agility-pack.net
MIT License
2.63k stars 375 forks source link

Add non-boxing enumerator for HtmlNodeCollection #555

Open lahma opened 3 months ago

lahma commented 3 months ago

When checking for docfx performance, I noticed that a lot of enumerator allocations were done inside of HtmlAgilityPack. This PR adds public struct enumerator access which won't need to box against interface, foreach loops will start to use this one.

image