Buildalyzer
Buildalyzer copied to clipboard
Proposal: represent of CompilerItems and CompilerProperties as dedicated types
While debugging #244, I noticed that debugging which compiler properties where active was not really clear. So similar to #243, I introduced two dedicated (read-only) types that contain the properties and the items. Potentiality, it can replace the dictionaries in the AnalyzerResult. That is, obviously a breaking change.
Under the hood, CompilerProperties and CompilerItemsCollection are dictionaries (with case-insensitive keys), but as I think (that can be challenged) having the values without the related key have less value in this case, the TryGet() method returns a KeyValuePair like struct that combines the two.
Let me know what you think.