2015-01-30 1 views
0

조건을 만족하는 (SomeOtherObject 's) 특성을 가진 'SomeOtherObject'에 의해 참조되는 'ListOfObjects'요소 목록을 반환하고 싶습니다. 나는이 코드를 시도하고있다 :목록의 참조 요소에 대한 조건에 따라 목록을 반환하는 방법

ParentObj.ListOfObjects.select(e|e.referencingContainers.typeSelect(SomOtherObject).attr.isValid()); 

'ListOfObjects는' '위의 코드를 ParentObj'.But으로부터 특정 개체의 목록을 추출하는 것은 나에게 아무것도주지 않는다. 여기서 무엇이 잘못되었는지 알아 내도록 도와주세요.

답변

0

위의 코드에서 select 내부의 표현식 결과는 목록을 반환하고 부울은 반환하지 않기 때문입니다. 그것이 내가 코드 이런 식으로 재 작성해야 할 것 개요 boolean하려면 :

ParentObj.ListOfObjects.select(e|e.referencingContainers.typeSelect(SomOtherObject).select(el|el.attr.isValid()).size > 0); 

선택 내부의 선택을 크기에 대한 검사와 함께하는 것은이 차이를 만든 것입니다. 또한 같은 방법으로 조건을 지정할 수 있습니다 org::eclipse::xtend::util::stdlib::crossref

:

+0

또는'select (el | el.attr.isValid()). size> 0)''존재한다 (el | el.attr.isValid())'도 수행 할 수 있습니다. – Sujju

0

은 특정 개체를 참조하는 개체를 찾기 위해 확장 있습니다. Here은 상호 참조 확장에 대한 추가 정보입니다.

관련 문제