Call to Annotator#annotate()... only for changed PsiElement ?

Hi,

From debugging my Annotator instance, I only see invocations for all Psi-elements.
This is in contrast to the information here: http://confluence.jetbrains.com/display/IDEADEV/Developing+Custom+Language+Plugins+for+IntelliJ+IDEA?focusedCommentId=51944660&#DevelopingCustomLanguagePluginsforIntelliJIDEA-SyntaxHighlightingandErrorHighlighting

...which states "When the file is changed, the annotator is called incrementally to process only changed elements in the PSI tree."

Can someone shed some light on this ?
Does this depend on the specific AST-node structure maybe ?

Regards,
Joerg

1 comment

As noted here http://devnet.jetbrains.com/message/5503397#5503397

"On any change to a text, IDEA builds a parallel PSI tree with a newly created PsiFile at the top, then builds a diff by comparing it to an existing one, then modifies original tree by inserting, replacing, or deleting parts of it (see BlockSupportImpl.makeFullParse() for reference). The new PsiFile is then discarded."

0

Please sign in to leave a comment.