This is a perf improvement of about 500ms for our razor code generation benchmark on my dev box. That's about .8% of the overall execution time of this benchmark. This change will remove a bunch of unnessary allocations from the parsing/code-generation path, and should improve responsiveness. For reference Enum.HasFlags performs boxing of the enum value, and then does a type comparison to see if the types are the same. This is significantly more costly than a normal bitwise and comparison, and it results in allocations. |
||
|---|---|---|
| src/Microsoft.AspNet.Razor | ||
| test/Microsoft.AspNet.Razor.Test | ||
| .gitattributes | ||
| .gitignore | ||
| CONTRIBUTING.md | ||
| LICENSE.txt | ||
| NuGet.Config | ||
| README.md | ||
| Razor.sln | ||
| build.cmd | ||
| build.sh | ||
| global.json | ||
| makefile.shade | ||
README.md
Razor
The Razor syntax provide a fast, terse, clean and lightweight way to combine server code with HTML to create dynamic web content. This repo contains the parser and the C# code generator for the Razor syntax.
This project is part of ASP.NET vNext. You can find samples, documentation and getting started instructions for ASP.NET vNext at the Home repo.