package jetbrains.mps.smodel.search; /*Generated by MPS */ import java.util.ArrayList; import org.jetbrains.mps.openapi.model.SNode; import java.util.List; import org.jetbrains.annotations.NotNull; import org.jetbrains.mps.util.Condition; import org.jetbrains.mps.openapi.model.SNodeUtil; public class NodeListChildrenSearchScope extends AbstractSearchScope { private ArrayList<SNode> myNodes; public NodeListChildrenSearchScope(List<SNode> nodes) { this.myNodes = new ArrayList<SNode>(nodes); } @NotNull @Override public List<SNode> getNodes(Condition<SNode> condition) { ArrayList<SNode> result = new ArrayList<SNode>(); for (SNode node : myNodes) { for (SNode child : SNodeUtil.getDescendants(node, condition, false)) { result.add(child); } } return result; } }