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;
}
}