Recently, I became curios about mechanism of code analysis in MSBuild. I searched a lot, specially in MSDN but could not get a firm grasp on how exactly this process is done.
I want to know what components or classes, in what order, are responsible for issue tracking. I have found some information like in C#, Roslyn is used for AST generation but I really cant understand the thorough working process.
If you don't have time to fully explain, there are two concepts I would love to understand (assume C# language):
- In other source code analysis software, AST is created and rules are compared with those AST nodes; so its a String == String strategy. I want to know if this scenario is also dominant in MSBuild or not.
- How AST is generated in MSBuild?
what I've dine so far:
searching MSDN for AST generation process, searching MSDN for components/Classes, googling, searching stackoverflow