From 56dad2617a86aeb83cf4f7f56519af621979851d Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 24 Feb 2016 21:56:31 +0000 Subject: Use Set instead of List for warnings --- .../mammoth/internal/results/InternalResult.java | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java') diff --git a/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java b/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java index 279692b..6ca3377 100644 --- a/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java +++ b/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java @@ -1,20 +1,22 @@ package org.zwobble.mammoth.internal.results; import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Sets; import org.zwobble.mammoth.internal.documents.Style; -import org.zwobble.mammoth.internal.util.MammothLists; import java.util.List; import java.util.Optional; +import java.util.Set; import java.util.function.BiFunction; import java.util.function.Function; -import static org.zwobble.mammoth.internal.util.MammothLists.list; +import static org.zwobble.mammoth.internal.util.MammothSets.set; public class InternalResult implements org.zwobble.mammoth.Result { public static InternalResult> concat(Iterable> results) { ImmutableList.Builder elements = ImmutableList.builder(); - ImmutableList.Builder warnings = ImmutableList.builder(); + ImmutableSet.Builder warnings = ImmutableSet.builder(); for (InternalResult result : results) { elements.add(result.value); warnings.addAll(result.warnings); @@ -29,21 +31,21 @@ public class InternalResult implements org.zwobble.mammoth.Result { { return new InternalResult<>( function.apply(first.value, second.value), - MammothLists.concat(first.warnings, second.warnings)); + Sets.union(first.warnings, second.warnings).immutableCopy()); } public static InternalResult> empty() { - return new InternalResult<>(Optional.empty(), list()); + return new InternalResult<>(Optional.empty(), set()); } public static InternalResult success(T value) { - return new InternalResult<>(value, list()); + return new InternalResult<>(value, set()); } private final T value; - private final List warnings; + private final Set warnings; - public InternalResult(T value, List warnings) { + public InternalResult(T value, Set warnings) { this.value = value; this.warnings = warnings; } @@ -52,7 +54,7 @@ public class InternalResult implements org.zwobble.mammoth.Result { return value; } - public List getWarnings() { + public Set getWarnings() { return warnings; } @@ -64,6 +66,6 @@ public class InternalResult implements org.zwobble.mammoth.Result { InternalResult intermediateResult = function.apply(value); return new InternalResult<>( intermediateResult.value, - MammothLists.concat(warnings, intermediateResult.warnings)); + Sets.union(warnings, intermediateResult.warnings).immutableCopy()); } } -- cgit v1.2.3