Когда я сканирую ast, я хочу проверить, может ли быть разрешен элемент типа XFeatureCall.
Конкретный пример:
val x = 2
val y = x + z
я знаю это
val y = <XFeatureCall> + <XFeatureCall>
Но только XFeatureCall "z" должен давать true (при применении предиката еще не найденного, который я ищу).
Пока не могу найти схему. За исключением того, что каждая неразрешимая переменная удовлетворяет следующему условию:
fc означает XFeatureCall
fc.feature instanceof JvmVoid && !fc.explicitOperationCall
Однако этого недостаточно. Потому что он также видит "System.out.println"
Примечание. Я использую TreeIterator, полученный из корневого элемента AST.
При необходимости я изучу, как это делает XbaseCompiler, но я предпочитаю этого не делать :)