What is the difference between an ElementProblemAnalyzer and a IDaemonStageProcess for adding highlightings?

Hi All,

I want to create a R# Plugin with a custom highlighting for code "problems". The documentation says that a IDaemonStageProcess can be used for this. In the sample projects I found a ElementProblemAnalyzer implementation which seems to do the same. Both classes add highlightings.
When I have to use a ElementProblemAnalyzer and when a IDaemonStageProcess should be used?

With best regards,

1 comment
Comment actions Permalink

You’re right to note that the two constructs are very similar. The difference is that

is a more concise way of creating both a daemon stage and a daemon stage process in one class. Also note that the generic parameter in the problem analyzer kind of ‘specializes’ it to analyze a particular element, whereas with the Stage/Process pairing you get more flexibility.

Please sign in to leave a comment.