Skip to content

Commit

Permalink
feat(#114): streams
Browse files Browse the repository at this point in the history
  • Loading branch information
h1alexbel committed Jan 3, 2025
1 parent a1cb7ea commit c9513dd
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions src/main/java/org/eolang/lints/errors/LtObjectIsNotUnique.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,12 @@

import com.jcabi.xml.XML;
import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import org.cactoos.io.ResourceOf;
import org.cactoos.text.TextOf;
import org.eolang.lints.Defect;
Expand Down Expand Up @@ -71,8 +72,8 @@ public Collection<Defect> defects(final Map<String, XML> pkg) {
if (
!(original.containsKey(name)
&& LtObjectIsNotUnique.packageName(oth)
.equals(LtObjectIsNotUnique.packageName(xmir))
)
.equals(LtObjectIsNotUnique.packageName(xmir))
)
) {
continue;
}
Expand Down Expand Up @@ -108,13 +109,16 @@ public String motive() throws Exception {
}

private static Map<String, String> programObjects(final XML xmir) {
final Map<String, String> objects = new HashMap<>(0);
final List<String> names = xmir.xpath("/program/objects/o/@name");
final List<String> lines = xmir.xpath("/program/objects/o/@line");
for (int pos = 0; pos < names.size(); pos++) {
objects.put(names.get(pos), lines.get(pos));
}
return objects;
return IntStream.range(0, names.size())
.boxed()
.collect(
Collectors.toMap(
names::get,
pos -> xmir.xpath("/program/objects/o/@line").get(pos),
(existing, replacement) -> replacement
)
);
}

private static String packageName(final XML xmir) {
Expand Down

0 comments on commit c9513dd

Please sign in to comment.