icsharpcode/NRefactory — pull request #221 by riviti (2013-07-16 21:01:54+00:00)
Title: Code issue batch support api

This introduces some changes to let NRefactory consumers easily apply multiple fixes.

The core concept is the one of a "sibling key", which is a token that can be used to distinguish which fixes are different and which are the same kind of fix.

The initial api idea was to add a property to the description attribute for issue providers indicating whether the issues and actions produced by the provider could be batched. This does not work well however, since there can be multiple fixes for each issue. This "sibling key" is therefore assigned to each individual CodeAction instance so that a single issue provider can provide issues containing both batchable and unbatchable fixes.

Api feedback is welcome. There is a WIP implementation of the MonoDevelop side of things here:
https://github.com/mono-soc-2013/monodevelop/tree/simonl/batch-fixing-in-editor