2013-08-16 7 views
0

내가 ast를 스캔 할 때 XFeatureCall 유형의 요소를 확인할 수 있는지 확인하고 싶습니다.XFeatureCall이 실제로 어떤 것을 참조하는지 확인하는 방법

콘크리트 예 :

val x = 2 
val y = x + z 

나는 (내가 찾고있어 아직 찾을 수 조건을 적용 할 때)

val y = <XFeatureCall> + <XFeatureCall> 

그러나 단지 XFeatureCall "Z"진정한 제공한다는 것을 알고있다.

지금까지 패턴을 찾을 수 없었습니다. 모든 확인할 수없는 변수를 만족하는 것을 제외하고는 다음의 조건 :

FC 이것은 그러나 충분하지 않습니다 XFeatureCall

fc.feature instanceof JvmVoid && !fc.explicitOperationCall 

을 의미한다. 그것은 또한 "에서 System.out.println"를 볼 수 있기 때문에

참고 : 내가 필요한 경우 루트 AST 요소

에서 얻을 TreeIterator를 사용 나는 XbaseCompiler 그것을 않습니다하지만 난하지 선호하는 방법을 검토 할 것이다 :)

답변

1

해당 기능이 해결되지 않았는지 확인하려면 fc.feature.eIsProxy가 올바른지 확인하십시오. 'System.out.println도 봅니다'라는 말은 무엇을 의미합니까?