Slide 18
Slide 18 text
IntelliJ – UAST
Universal Abstract Syntax Tree
■ Описывает JVM languages superset: Java и Kotlin
■ Позволяет писать универсальный код инспекций
■ Обёртка над PSI
■ Элементы
○ UElement, UFile, UClass, UMember, UField, UMethod, ...
■ Конструкции
○ UComment, UDeclaration, UExpression, UBlockExpression,
UCallExpression, USwitchExpression, …
■ Если не хватает возможностей - спускаемся на уровень UAST
(resolve)
■ Не поддерживается кодогенерация (используем PSI)
См. org.jetbrains.uast
18