Как отслеживать изменения кода с помощью PsiTreeChangeListener? - PullRequest
0 голосов
/ 22 апреля 2020

Я хочу отслеживать изменения файла в виде кода, например, объявления полей, методы и так далее в проекте. Также я хочу получить как старые, так и новые версии файлов java при обнаружении модификации.

Для этой цели я знаю, что должен использовать PsiTreeChangeListener, однако мне следует избегать обработки PsiTreeChangeEvent и вместо этого использовать CachedValue и PsiModificationTracker.MODIFICATION_COUNT.

Я уже сделал подобное сообщение:

https://intellij-support.jetbrains.com/hc/en-us/community/posts/360007885220/

Мои вопросы:

Как я могу использовать CachedValue и PsiModificationTracker в Слушателе (инициализация)?

Как проверить, были ли модифицированы файлы?

Возможно, есть лучший способ добиться этого?

Любой примеры кода / фрагменты приветствуются

...