Ich brauche einen Listener, der benachrichtigt werden kann, wenn PsiElement nicht vaild ist. PsiTreeChangeListener scheint nicht dafür geeignet zu sein. Gibt es einen anderen Zuhörer, der das sagen kann? Oder muss ich einen Listener erstellen? Wie erstelle ich diesen Listener?PSI Listener ändern
0
A
Antwort
0
Sie können SmartPsiElementPointer Klasse verwenden, um eine Liste von Psi-Elementen zu erstellen und zu verwalten.
SmartPsiElementPointer ist ein Zeiger auf eine PsiElement, die nicht ungültig selbst dann nicht werden, wenn das psi Element verweist er auf wurde gelöscht. In diesem Fall ist es getElement() Methode wird einfach zurück Null. Sie können dies erkennen und behandeln.
Um ein Element in SmartPsiElementPointer wickeln Sie den folgenden Code verwenden:
SmartPointerManager.getInstance(element.getProject()).createSmartPsiElementPointer(element);
Verwandte Themen
- 1. Java-Eigenschaft Listener ändern
- 2. JComboBox Auswahl Ändern Listener?
- 3. window.devicePixelRatio ändern Listener
- 4. Gspread - Listener ändern?
- 5. PSI und Index stimmen nicht überein: PSI und Index passen nicht auf Android Studio
- 6. Wert ändern Listener zu JTextField
- 7. So ändern Sie die Listener-Thread-Priorität
- 8. Ermitteln des Aufrufknotens in JavaFX Listener ändern
- 9. Event-Listener für MySQL-Tabelle ändern?
- 10. AS3 - Variable ändern und Werte an den Listener übergeben
- 11. GWT: Hinzufügen eines Wert ändern Listener EditTextCell widget
- 12. IPN Listener & Protokolldateiberechtigungen
- 13. POST-Listener in Dateiübertragung
- 14. Javascript registrieren Ereignis Listener
- 15. Swing: Ereignis-Listener-Unterstützungsklasse
- 16. chrome.webRequest.onAuthRequired Listener
- 17. CommunicationState Listener?
- 18. Aktion Listener
- 19. Exception Listener
- 20. IntelliJ IDEA-Plugin: Zuordnen einer Quelle Psi-Datei mit einem Symbol in der Paketstruktur
- 21. Remove Listener von ViewTreeObserver
- 22. Oracle Listener Chaos
- 23. Java MVC, mehrere Listener
- 24. Eigenschaften Datei-Listener in Java?
- 25. Android ExoPlayer Listener Endlosschleife
- 26. Kein Listener, Adapterfehler
- 27. Listener, wenn Ansicht Ansicht Android
- 28. pure angularjs scroll Ereignis-Listener
- 29. AngularJS-Tastendruckereignis-Listener - KEIN EINGANGSELEMENT
- 30. Element innerHTML loswerden Event-Listener
ich, dass es möglich und/oder notwendig bin nicht sicher. Können Sie uns bitte sagen, was Sie erreichen möchten? – Argb32
Am Anfang habe ich alle erforderlichen psiElements, aber wenn zwischendurch jemand psiElement kommentiert oder entfernt oder bewegt, dann wird das psiElement ungültig oder null. also wollte ich zu diesem zeitpunkt wissen und dementsprechend möchte ich meine liste aller psiElements updaten. Ich habe in diesem Fall daran gedacht, ein Beobachtermuster zu implementieren, aber ich brauche einen Zuhörer dafür. Wenn also ein psiElement aus dieser Liste ungültig wird, wird die Liste dieses Element aus dieser Liste kennen und entfernen. Ich verstehe nicht, wie ich diesen Hörer implementieren soll. – Aarti