aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/xml/XmlElementList.java
blob: a14c39c50afb12dd6aafe423b5552eaa77795ac1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package org.zwobble.mammoth.internal.xml;

import java.util.Iterator;
import java.util.List;

import static org.zwobble.mammoth.internal.util.Lists.eagerFlatMap;

public class XmlElementList implements Iterable<XmlElement> {
    private final List<XmlElement> elements;

    public XmlElementList(List<XmlElement> elements) {
        this.elements = elements;
    }

    @Override
    public Iterator<XmlElement> iterator() {
        return elements.iterator();
    }

    public XmlElementList findChildren(String name) {
        return new XmlElementList(eagerFlatMap(
            elements,
            element -> element.findChildren(name)));
    }
}