From 50acf1f9def7e658055cc13df43ccb207f106fa8 Mon Sep 17 00:00:00 2001 From: Pierre Gruet <pgtdebian@free.fr> Date: Sun, 1 Nov 2020 07:48:27 +0100 Subject: [PATCH] New upstream version 2.6.9 --- CHANGES | 4 ++ build.properties | 2 +- build.xml | 3 + .../ImmutableExternalPrefixMapSlowTest.java | 15 ++--- src/it/unimi/dsi/Util.java | 4 +- .../big/io/FileLinesByteArrayCollection.java | 24 +++---- .../unimi/dsi/big/io/FileLinesCollection.java | 24 +++---- .../unimi/dsi/big/util/AbstractPrefixMap.java | 12 ++-- .../dsi/big/util/FrontCodedStringBigList.java | 4 +- .../dsi/big/util/ImmutableBinaryTrie.java | 28 ++++---- .../big/util/ImmutableExternalPrefixMap.java | 8 +-- .../big/util/LiterallySignedStringMap.java | 37 +++++------ .../big/util/LongBigListSignedStringMap.java | 41 ++++++------ .../util/PermutedFrontCodedStringBigList.java | 26 ++++---- src/it/unimi/dsi/big/util/PrefixMap.java | 4 +- .../big/util/SemiExternalGammaBigList.java | 50 +++++++------- .../big/util/ShiftAddXorSignedStringMap.java | 35 +++++----- src/it/unimi/dsi/big/util/StringMap.java | 7 +- src/it/unimi/dsi/big/util/StringMaps.java | 23 ++++--- .../big/util/TernaryIntervalSearchTree.java | 23 ++++--- src/it/unimi/dsi/bits/AbstractBitVector.java | 10 +-- src/it/unimi/dsi/bits/BitVector.java | 10 +-- src/it/unimi/dsi/bits/BitVectors.java | 12 ++-- .../unimi/dsi/bits/BooleanListBitVector.java | 10 +-- src/it/unimi/dsi/bits/Fast.java | 3 +- .../bits/HuTuckerTransformationStrategy.java | 20 +++--- src/it/unimi/dsi/bits/LongArrayBitVector.java | 4 +- .../unimi/dsi/bits/LongBigArrayBitVector.java | 4 +- .../PrefixCoderTransformationStrategy.java | 4 +- .../dsi/bits/TransformationStrategies.java | 52 ++++++++++----- .../dsi/bits/TransformationStrategy.java | 4 +- .../CanonicalFast64CodeWordDecoder.java | 8 +-- .../unimi/dsi/compression/CodeWordCoder.java | 10 +-- src/it/unimi/dsi/compression/Codec.java | 5 +- src/it/unimi/dsi/compression/Coder.java | 8 +-- src/it/unimi/dsi/compression/Decoder.java | 8 +-- .../dsi/compression/Fast64CodeWordCoder.java | 8 +-- .../unimi/dsi/compression/HuTuckerCodec.java | 8 +-- .../unimi/dsi/compression/HuffmanCodec.java | 10 +-- src/it/unimi/dsi/compression/PrefixCodec.java | 4 +- src/it/unimi/dsi/compression/PrefixCoder.java | 5 +- src/it/unimi/dsi/compression/TreeDecoder.java | 16 ++--- .../unimi/dsi/io/ByteBufferInputStream.java | 8 +-- src/it/unimi/dsi/io/ByteDiskQueue.java | 4 +- src/it/unimi/dsi/io/DebugInputBitStream.java | 48 +++++++------- src/it/unimi/dsi/io/DebugOutputBitStream.java | 14 ++-- src/it/unimi/dsi/io/DelimitedWordReader.java | 31 +++++---- src/it/unimi/dsi/io/FastBufferedReader.java | 14 ++-- src/it/unimi/dsi/io/FileLinesCollection.java | 24 +++---- src/it/unimi/dsi/io/InputBitStream.java | 64 ++++++++++-------- src/it/unimi/dsi/io/LineIterator.java | 14 ++-- src/it/unimi/dsi/io/LineWordReader.java | 8 +-- src/it/unimi/dsi/io/MultipleInputStream.java | 6 +- src/it/unimi/dsi/io/NullInputStream.java | 10 +-- src/it/unimi/dsi/io/NullOutputStream.java | 8 +-- src/it/unimi/dsi/io/NullReader.java | 4 +- src/it/unimi/dsi/io/OfflineIterable.java | 29 ++++---- src/it/unimi/dsi/io/OutputBitStream.java | 26 ++++---- src/it/unimi/dsi/io/SafelyCloseable.java | 5 +- src/it/unimi/dsi/io/SegmentedInputStream.java | 20 +++--- src/it/unimi/dsi/io/WordReader.java | 6 +- src/it/unimi/dsi/lang/EnumStringParser.java | 10 +-- src/it/unimi/dsi/lang/FlyweightPrototype.java | 4 +- .../unimi/dsi/lang/FlyweightPrototypes.java | 8 +-- src/it/unimi/dsi/lang/MutableString.java | 4 +- src/it/unimi/dsi/lang/ObjectParser.java | 4 +- src/it/unimi/dsi/logging/ProgressLogger.java | 4 +- src/it/unimi/dsi/parser/Attribute.java | 4 +- src/it/unimi/dsi/parser/BulletParser.java | 3 +- src/it/unimi/dsi/parser/Element.java | 5 +- src/it/unimi/dsi/parser/Entity.java | 4 +- src/it/unimi/dsi/parser/HTMLFactory.java | 5 +- src/it/unimi/dsi/parser/ParsingFactory.java | 4 +- .../dsi/parser/WellFormedXmlFactory.java | 4 +- .../unimi/dsi/parser/callback/Callback.java | 8 +-- .../callback/ComposedCallbackBuilder.java | 12 ++-- .../callback/DebugCallbackDecorator.java | 8 +-- .../dsi/parser/callback/DefaultCallback.java | 8 +-- .../dsi/parser/callback/LinkExtractor.java | 10 +-- .../dsi/parser/callback/TextExtractor.java | 8 +-- src/it/unimi/dsi/stat/Jackknife.java | 19 ++---- src/it/unimi/dsi/stat/SummaryStats.java | 12 ++-- src/it/unimi/dsi/util/AbstractPrefixMap.java | 12 ++-- src/it/unimi/dsi/util/BloomFilter.java | 24 +++---- .../unimi/dsi/util/ByteBufferLongBigList.java | 4 +- .../dsi/util/CircularCharArrayBuffer.java | 20 +++--- .../unimi/dsi/util/FrontCodedStringList.java | 40 +++++------ .../dsi/util/HyperLogLogCounterArray.java | 24 +++---- .../unimi/dsi/util/ImmutableBinaryTrie.java | 28 ++++---- .../dsi/util/ImmutableExternalPrefixMap.java | 40 +++++------ src/it/unimi/dsi/util/Interval.java | 19 +++--- src/it/unimi/dsi/util/Intervals.java | 4 +- src/it/unimi/dsi/util/KahanSummation.java | 4 +- .../dsi/util/LiterallySignedStringMap.java | 37 +++++------ src/it/unimi/dsi/util/LongInterval.java | 19 +++--- src/it/unimi/dsi/util/LongIntervals.java | 4 +- .../util/PermutedFrontCodedStringList.java | 26 ++++---- src/it/unimi/dsi/util/PrefixMap.java | 4 +- src/it/unimi/dsi/util/Properties.java | 66 +++++++++---------- .../unimi/dsi/util/SemiExternalGammaList.java | 48 +++++++------- .../dsi/util/ShiftAddXorSignedStringMap.java | 36 +++++----- src/it/unimi/dsi/util/SplitMix64Random.java | 9 ++- .../dsi/util/SplitMix64RandomGenerator.java | 17 +++-- src/it/unimi/dsi/util/StringMap.java | 8 +-- src/it/unimi/dsi/util/StringMaps.java | 24 +++---- .../dsi/util/TernaryIntervalSearchTree.java | 18 ++--- src/it/unimi/dsi/util/TextPattern.java | 4 +- .../dsi/util/XoRoShiRo128PlusPlusRandom.java | 4 +- .../XoRoShiRo128PlusPlusRandomGenerator.java | 4 +- .../dsi/util/XoRoShiRo128PlusRandom.java | 4 +- .../util/XoRoShiRo128PlusRandomGenerator.java | 4 +- .../dsi/util/XoRoShiRo128StarStarRandom.java | 4 +- .../XoRoShiRo128StarStarRandomGenerator.java | 4 +- .../dsi/util/XoShiRo256PlusPlusRandom.java | 4 +- .../XoShiRo256PlusPlusRandomGenerator.java | 4 +- .../unimi/dsi/util/XoShiRo256PlusRandom.java | 4 +- .../util/XoShiRo256PlusRandomGenerator.java | 4 +- .../dsi/util/XoShiRo256StarStarRandom.java | 4 +- .../XoShiRo256StarStarRandomGenerator.java | 4 +- .../dsi/util/XorShift1024StarPhiRandom.java | 3 +- .../XorShift1024StarPhiRandomGenerator.java | 3 +- .../dsi/util/XorShift1024StarRandom.java | 4 +- .../util/XorShift1024StarRandomGenerator.java | 4 +- .../unimi/dsi/util/XorShift128PlusRandom.java | 3 +- .../util/XorShift128PlusRandomGenerator.java | 4 +- .../unimi/dsi/util/XorShift64StarRandom.java | 10 +-- .../util/XorShift64StarRandomGenerator.java | 9 ++- .../concurrent/ReorderingBlockingQueue.java | 4 +- test/it/unimi/dsi/UtilTest.java | 3 +- .../big/util/FrontCodedStringBigListTest.java | 4 +- .../dsi/big/util/ImmutableBinaryTrieTest.java | 11 ++-- .../util/ImmutableExternalPrefixMapTest.java | 53 +++++++-------- .../util/LiterallySignedStringMapTest.java | 42 ++++++------ .../util/LongBigArraySignedStringMapTest.java | 29 ++++---- .../util/SemiExternalGammaBigListTest.java | 35 +++++----- .../util/ShiftAddXorSignedStringMapTest.java | 33 +++++----- .../util/TernaryIntervalSearchTreeTest.java | 4 +- .../unimi/dsi/bits/AbstractBitVectorTest.java | 24 +++---- test/it/unimi/dsi/bits/BitVectorTestCase.java | 46 ++++++------- test/it/unimi/dsi/bits/BitVectorsTest.java | 21 +++--- .../dsi/bits/BooleanListBitVectorTest.java | 10 +-- .../ByteArrayTransformationStrategyTest.java | 4 +- test/it/unimi/dsi/bits/FastTest.java | 17 ++--- .../FixedLongTransformationStrategyTest.java | 6 +- .../bits/IsoTransformationStrategyTest.java | 7 +- .../dsi/bits/LongArrayBitVectorTest.java | 4 +- .../dsi/bits/LongBigArrayBitVectorTest.java | 4 +- .../PrefixFreeTransformationStrategyTest.java | 14 ++-- ...awByteArrayTransformationStrategyTest.java | 4 +- ...awFixedLongTransformationStrategyTest.java | 6 +- .../RawISOTransformationStrategyTest.java | 4 +- .../RawUtf16TransformationStrategyTest.java | 7 +- .../RawUtf32TransformationStrategyTest.java | 4 +- .../bits/Utf16TransformationStrategyTest.java | 7 +- .../bits/Utf32TransformationStrategyTest.java | 4 +- .../unimi/dsi/compression/CodecTestCase.java | 40 +++++------ .../dsi/compression/HuTuckerCodecTest.java | 4 +- .../dsi/compression/HuffmanCodecTest.java | 4 +- .../dsi/io/ByteBufferInputStreamTest.java | 17 ++--- test/it/unimi/dsi/io/ByteDiskQueueTest.java | 35 +++++----- .../unimi/dsi/io/DelimitedWordReaderTest.java | 6 +- .../unimi/dsi/io/FastBufferedReaderTest.java | 34 +++++----- .../io/FileLinesByteArrayCollectionTest.java | 17 +++-- test/it/unimi/dsi/io/InputBitStreamTest.java | 4 +- test/it/unimi/dsi/io/OfflineIterableTest.java | 29 ++++---- test/it/unimi/dsi/io/OutputBitStreamTest.java | 13 ++-- .../dsi/io/SegmentedInputStreamTest.java | 9 +-- test/it/unimi/dsi/lang/EnumParserTest.java | 14 ++-- test/it/unimi/dsi/lang/MutableStringTest.java | 17 ++--- test/it/unimi/dsi/lang/ObjectParserTest.java | 4 +- test/it/unimi/dsi/lang/TwoStrings.java | 8 +-- .../it/unimi/dsi/parser/BulletParserTest.java | 4 +- .../BulletParserCallbackContentHandler.java | 20 +++--- .../parser/callback/LinkExtractorTest.java | 15 +++-- .../parser/callback/TextExtractorTest.java | 13 ++-- test/it/unimi/dsi/stat/JackknifeTest.java | 8 +-- test/it/unimi/dsi/stat/SummaryStatsTest.java | 7 +- test/it/unimi/dsi/util/BloomFilterTest.java | 53 +++++++-------- .../dsi/util/ByteBufferLongBigListTest.java | 20 ++++++ .../dsi/util/CircularCharArrayBufferTest.java | 4 +- .../dsi/util/FrontCodedStringListTest.java | 17 ++--- .../dsi/util/HyperLogLogCounterArrayTest.java | 4 +- .../dsi/util/ImmutableBinaryTrieTest.java | 12 ++-- .../util/ImmutableExternalPrefixMapTest.java | 50 +++++++------- test/it/unimi/dsi/util/IntervalTest.java | 31 ++++----- .../it/unimi/dsi/util/KahanSummationTest.java | 8 +-- test/it/unimi/dsi/util/LineIteratorTest.java | 13 ++-- .../util/LiterallySignedStringMapTest.java | 25 +++---- test/it/unimi/dsi/util/LongIntervalTest.java | 26 ++++---- .../dsi/util/SemiExternalGammaListTest.java | 40 +++++------ .../util/ShiftAddXorSignedStringMapTest.java | 17 ++--- .../util/SplitMix64RandomGeneratorTest.java | 37 +++++------ .../unimi/dsi/util/SplitMix64RandomTest.java | 33 +++++----- .../util/TernaryIntervalSearchTreeTest.java | 4 +- test/it/unimi/dsi/util/TextPatternTest.java | 19 +++--- ...RoShiRo128PlusPlusRandomGeneratorTest.java | 3 +- .../util/XoRoShiRo128PlusPlusRandomTest.java | 3 +- .../XoRoShiRo128PlusRandomGeneratorTest.java | 3 +- .../dsi/util/XoRoShiRo128PlusRandomTest.java | 3 +- ...RoShiRo128StarStarRandomGeneratorTest.java | 3 +- .../util/XoRoShiRo128StarStarRandomTest.java | 3 +- ...XoShiRo256PlusPlusRandomGeneratorTest.java | 3 +- .../util/XoShiRo256PlusPlusRandomTest.java | 3 +- .../XoShiRo256PlusRandomGeneratorTest.java | 3 +- .../dsi/util/XoShiRo256PlusRandomTest.java | 3 +- ...XoShiRo256StarStarRandomGeneratorTest.java | 3 +- .../util/XoShiRo256StarStarRandomTest.java | 3 +- ...orShift1024StarPhiRandomGeneratorTest.java | 3 +- .../util/XorShift1024StarPhiRandomTest.java | 3 +- .../XorShift1024StarRandomGeneratorTest.java | 39 ++++++----- .../dsi/util/XorShift1024StarRandomTest.java | 35 +++++----- .../XorShift128PlusRandomGeneratorTest.java | 37 +++++------ .../dsi/util/XorShift128PlusRandomTest.java | 3 +- .../XorShift64StarRandomGeneratorTest.java | 37 +++++------ .../dsi/util/XorShift64StarRandomTest.java | 33 +++++----- .../ReorderingBlockingQueueTest.java | 4 +- 216 files changed, 1563 insertions(+), 1528 deletions(-) diff --git a/CHANGES b/CHANGES index ad4b214..919d599 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,7 @@ +2.6.9 + +- Added automatic module name. + 2.6.8 - Fixed missing data files from tests (thanks to Pierre Gruet for diff --git a/build.properties b/build.properties index 3eb175d..8fca93a 100644 --- a/build.properties +++ b/build.properties @@ -1,4 +1,4 @@ -version=2.6.8 +version=2.6.9 build.sysclasspath=ignore diff --git a/build.xml b/build.xml index 0278d49..01deac4 100644 --- a/build.xml +++ b/build.xml @@ -157,6 +157,9 @@ <fileset dir="${src}" includes="**/*.8"/> <fileset dir="${src}" includes="**/*.16"/> <fileset dir="${src}" includes="**/*.12"/> + <manifest> + <attribute name="Automatic-Module-Name" value="it.unimi.dsi.dsiutils"/> + </manifest> </jar> </target> diff --git a/slow/it/unimi/dsi/big/util/ImmutableExternalPrefixMapSlowTest.java b/slow/it/unimi/dsi/big/util/ImmutableExternalPrefixMapSlowTest.java index 481bc98..3930db6 100644 --- a/slow/it/unimi/dsi/big/util/ImmutableExternalPrefixMapSlowTest.java +++ b/slow/it/unimi/dsi/big/util/ImmutableExternalPrefixMapSlowTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,10 +18,10 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.objects.ObjectIterator; import java.io.IOException; import java.util.Iterator; @@ -31,10 +29,12 @@ import java.util.NoSuchElementException; import org.junit.Test; +import it.unimi.dsi.fastutil.objects.ObjectIterator; + public class ImmutableExternalPrefixMapSlowTest { public void testBig(final int blockSize) throws IOException { - Iterable<String> p = new Iterable<String>() { + final Iterable<String> p = new Iterable<String>() { private final static long INCREMENT= ((1L << 62) / 3000000000L); @Override public Iterator<String> iterator() { @@ -49,7 +49,7 @@ public class ImmutableExternalPrefixMapSlowTest { public String next() { if (! hasNext()) throw new NoSuchElementException(); final long v = curr++ * INCREMENT ; - char[] a = new char[4]; + final char[] a = new char[4]; a[0] = (char)(v >>> 48); a[1] = (char)(v >>> 32); a[2] = (char)(v >>> 16); @@ -60,11 +60,10 @@ public class ImmutableExternalPrefixMapSlowTest { } }; - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(p, blockSize); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(p, blockSize); int j = 0; - for(Iterator<String> i = p.iterator(); i.hasNext();) { - String s = i.next(); + for (final String s : p) { assertTrue(s, d.containsKey(s)); assertEquals(s, d.list().get(j++).toString()); } diff --git a/src/it/unimi/dsi/Util.java b/src/it/unimi/dsi/Util.java index 0e95695..b5354eb 100644 --- a/src/it/unimi/dsi/Util.java +++ b/src/it/unimi/dsi/Util.java @@ -1,5 +1,3 @@ -package it.unimi.dsi; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi; * */ +package it.unimi.dsi; + import static it.unimi.dsi.fastutil.BigArrays.get; import static it.unimi.dsi.fastutil.BigArrays.length; import static it.unimi.dsi.fastutil.BigArrays.set; diff --git a/src/it/unimi/dsi/big/io/FileLinesByteArrayCollection.java b/src/it/unimi/dsi/big/io/FileLinesByteArrayCollection.java index 82d2fe9..dbc8d71 100644 --- a/src/it/unimi/dsi/big/io/FileLinesByteArrayCollection.java +++ b/src/it/unimi/dsi/big/io/FileLinesByteArrayCollection.java @@ -1,15 +1,3 @@ -package it.unimi.dsi.big.io; - -import java.io.Closeable; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.AbstractCollection; -import java.util.Arrays; -import java.util.EnumSet; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.zip.GZIPInputStream; - /* * DSI utilities * @@ -30,6 +18,18 @@ import java.util.zip.GZIPInputStream; * */ +package it.unimi.dsi.big.io; + +import java.io.Closeable; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.AbstractCollection; +import java.util.Arrays; +import java.util.EnumSet; +import java.util.Iterator; +import java.util.NoSuchElementException; +import java.util.zip.GZIPInputStream; + import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.bytes.ByteArrays; import it.unimi.dsi.fastutil.io.FastBufferedInputStream; diff --git a/src/it/unimi/dsi/big/io/FileLinesCollection.java b/src/it/unimi/dsi/big/io/FileLinesCollection.java index ca136c9..231934e 100644 --- a/src/it/unimi/dsi/big/io/FileLinesCollection.java +++ b/src/it/unimi/dsi/big/io/FileLinesCollection.java @@ -1,15 +1,3 @@ -package it.unimi.dsi.big.io; - -import java.io.Closeable; -import java.io.FileInputStream; -import java.io.FileReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.util.AbstractCollection; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.zip.GZIPInputStream; - /* * DSI utilities * @@ -30,6 +18,18 @@ import java.util.zip.GZIPInputStream; * */ +package it.unimi.dsi.big.io; + +import java.io.Closeable; +import java.io.FileInputStream; +import java.io.FileReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.AbstractCollection; +import java.util.Iterator; +import java.util.NoSuchElementException; +import java.util.zip.GZIPInputStream; + import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.objects.ObjectBigArrayBigList; import it.unimi.dsi.fastutil.objects.ObjectBigList; diff --git a/src/it/unimi/dsi/big/util/AbstractPrefixMap.java b/src/it/unimi/dsi/big/util/AbstractPrefixMap.java index 728ef70..ff44ce7 100644 --- a/src/it/unimi/dsi/big/util/AbstractPrefixMap.java +++ b/src/it/unimi/dsi/big/util/AbstractPrefixMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,10 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + +import java.io.Serializable; + import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; import it.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction; import it.unimi.dsi.fastutil.objects.AbstractObjectBigList; @@ -29,8 +31,6 @@ import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.util.LongInterval; import it.unimi.dsi.util.LongIntervals; -import java.io.Serializable; - /** An abstract implementation of a prefix map. * * <p>This class provides the full services of a {@link PrefixMap} by implementing just @@ -107,7 +107,7 @@ public abstract class AbstractPrefixMap extends AbstractObject2LongFunction<Char @Override public boolean containsKey(final Object o) { - LongInterval interval = (LongInterval)o; + final LongInterval interval = (LongInterval)o; return interval != LongIntervals.EMPTY_INTERVAL && interval.left >= 0 && interval.right < AbstractPrefixMap.this.size64(); } @@ -128,7 +128,7 @@ public abstract class AbstractPrefixMap extends AbstractObject2LongFunction<Char return AbstractPrefixMap.this.size64(); } @Override - public MutableString get(long index) { + public MutableString get(final long index) { return getTerm(index, new MutableString()); } }; diff --git a/src/it/unimi/dsi/big/util/FrontCodedStringBigList.java b/src/it/unimi/dsi/big/util/FrontCodedStringBigList.java index 42be201..7954316 100644 --- a/src/it/unimi/dsi/big/util/FrontCodedStringBigList.java +++ b/src/it/unimi/dsi/big/util/FrontCodedStringBigList.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import java.io.IOException; import java.io.InputStreamReader; import java.io.Serializable; diff --git a/src/it/unimi/dsi/big/util/ImmutableBinaryTrie.java b/src/it/unimi/dsi/big/util/ImmutableBinaryTrie.java index 98ab5ca..9ab7d6f 100644 --- a/src/it/unimi/dsi/big/util/ImmutableBinaryTrie.java +++ b/src/it/unimi/dsi/big/util/ImmutableBinaryTrie.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,12 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.ListIterator; + import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.bits.LongArrayBitVector; import it.unimi.dsi.bits.TransformationStrategy; @@ -31,10 +35,6 @@ import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.util.LongInterval; import it.unimi.dsi.util.LongIntervals; -import java.io.Serializable; -import java.util.Iterator; -import java.util.ListIterator; - /** An immutable implementation of binary tries. * * <P>Instance of this class are built starting from a lexicographically ordered @@ -165,14 +165,15 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple if (elements.size() == 0) return null; - BitVector first = elements.get(0), curr; + final BitVector first = elements.get(0); + BitVector curr; int prefix = (int) first.size64(), change = -1, j; // We rule out the case of a single word (it would work anyway, but it's faster) if (elements.size() == 1) return new Node(pos < prefix ? LongArrayBitVector.copy(first.subVector(pos, prefix)) : null, size++); // Find maximum common prefix. change records the point of change (for splitting the word set). - for(ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { + for(final ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { curr = i.next(); if (curr.size64() < prefix) prefix = (int) curr.size64(); @@ -189,7 +190,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple // and explicitly search for the actual change point, which is the first // word with prefix-th bit true. change = 1; - for(ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { + for(final ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { curr = i.next(); if (curr.getBoolean(prefix)) break; change++; @@ -231,7 +232,8 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple path = n.path; if (path != null) { - int minLength = Math.min(length - pos, n.pathLength), i; + final int minLength = Math.min(length - pos, n.pathLength); + int i; for(i = 0; i < minLength; i++) if (word.getBoolean(pos + i) != get(path, i)) break; // Incompatible with current path. if (i < minLength) return -1; @@ -318,7 +320,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple path = n.path; if (path != null) { - int maxLength = Math.min(length - pos, n.pathLength); + final int maxLength = Math.min(length - pos, n.pathLength); int i; for(i = 0; i < maxLength; i++) if (word.getBoolean(pos + i) != get(path, i)) break; // Incompatible with current path--we return the empty interval. @@ -436,7 +438,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple } if (path != null) { - int maxLength = Math.min(length - pos, n.pathLength); + final int maxLength = Math.min(length - pos, n.pathLength); int i; for(i = 0; i < maxLength; i++) if (mismatch = (word.getBoolean(pos + i) != get(path, i))) break; @@ -635,7 +637,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple @Override public String toString() { - MutableString s = new MutableString(); + final MutableString s = new MutableString(); recToString(root, new MutableString(), s, new MutableString(), 0); return s.toString(); } diff --git a/src/it/unimi/dsi/big/util/ImmutableExternalPrefixMap.java b/src/it/unimi/dsi/big/util/ImmutableExternalPrefixMap.java index 3dce318..b40ffe3 100644 --- a/src/it/unimi/dsi/big/util/ImmutableExternalPrefixMap.java +++ b/src/it/unimi/dsi/big/util/ImmutableExternalPrefixMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; @@ -216,8 +216,8 @@ public class ImmutableExternalPrefixMap extends AbstractPrefixMap implements Ser final ObjectArrayList<MutableString> delimiters = new ObjectArrayList<>(); prevTerm.length(0); - for(final Iterator<?> i = terms.iterator(); i.hasNext();) { - s = (CharSequence) i.next(); + for (final Object term : terms) { + s = (CharSequence) term; length = s.length(); isDelimiter = false; diff --git a/src/it/unimi/dsi/big/util/LiterallySignedStringMap.java b/src/it/unimi/dsi/big/util/LiterallySignedStringMap.java index 8bf0fd6..d3c39e2 100644 --- a/src/it/unimi/dsi/big/util/LiterallySignedStringMap.java +++ b/src/it/unimi/dsi/big/util/LiterallySignedStringMap.java @@ -1,22 +1,3 @@ -package it.unimi.dsi.big.util; - -import java.io.IOException; -import java.io.Serializable; -import java.nio.charset.Charset; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.martiansoftware.jsap.FlaggedOption; -import com.martiansoftware.jsap.JSAP; -import com.martiansoftware.jsap.JSAPException; -import com.martiansoftware.jsap.JSAPResult; -import com.martiansoftware.jsap.Parameter; -import com.martiansoftware.jsap.SimpleJSAP; -import com.martiansoftware.jsap.Switch; -import com.martiansoftware.jsap.UnflaggedOption; -import com.martiansoftware.jsap.stringparsers.ForNameStringParser; - /* * DSI utilities * @@ -37,6 +18,24 @@ import com.martiansoftware.jsap.stringparsers.ForNameStringParser; * */ +package it.unimi.dsi.big.util; + +import java.io.IOException; +import java.io.Serializable; +import java.nio.charset.Charset; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.martiansoftware.jsap.FlaggedOption; +import com.martiansoftware.jsap.JSAP; +import com.martiansoftware.jsap.JSAPException; +import com.martiansoftware.jsap.JSAPResult; +import com.martiansoftware.jsap.Parameter; +import com.martiansoftware.jsap.SimpleJSAP; +import com.martiansoftware.jsap.Switch; +import com.martiansoftware.jsap.UnflaggedOption; +import com.martiansoftware.jsap.stringparsers.ForNameStringParser; import it.unimi.dsi.big.io.FileLinesCollection; import it.unimi.dsi.fastutil.Size64; diff --git a/src/it/unimi/dsi/big/util/LongBigListSignedStringMap.java b/src/it/unimi/dsi/big/util/LongBigListSignedStringMap.java index 2dbfa73..511b9c3 100644 --- a/src/it/unimi/dsi/big/util/LongBigListSignedStringMap.java +++ b/src/it/unimi/dsi/big/util/LongBigListSignedStringMap.java @@ -1,3 +1,23 @@ +/* + * DSI utilities + * + * Copyright (C) 2013-2020 Sebastiano Vigna + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + * + */ + package it.unimi.dsi.big.util; import java.io.DataOutput; @@ -27,27 +47,6 @@ import com.martiansoftware.jsap.Switch; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; -/* - * DSI utilities - * - * Copyright (C) 2013-2020 Sebastiano Vigna - * - * This library is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 3 of the License, or (at your option) - * any later version. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License - * for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, see <http://www.gnu.org/licenses/>. - * - */ - - import it.unimi.dsi.fastutil.Function; import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.io.BinIO; diff --git a/src/it/unimi/dsi/big/util/PermutedFrontCodedStringBigList.java b/src/it/unimi/dsi/big/util/PermutedFrontCodedStringBigList.java index e3bfc08..26eba8a 100644 --- a/src/it/unimi/dsi/big/util/PermutedFrontCodedStringBigList.java +++ b/src/it/unimi/dsi/big/util/PermutedFrontCodedStringBigList.java @@ -1,16 +1,3 @@ -package it.unimi.dsi.big.util; - -import java.io.IOException; -import java.io.Serializable; - -import com.martiansoftware.jsap.JSAP; -import com.martiansoftware.jsap.JSAPException; -import com.martiansoftware.jsap.JSAPResult; -import com.martiansoftware.jsap.Parameter; -import com.martiansoftware.jsap.SimpleJSAP; -import com.martiansoftware.jsap.Switch; -import com.martiansoftware.jsap.UnflaggedOption; - /* * DSI utilities * @@ -31,6 +18,19 @@ import com.martiansoftware.jsap.UnflaggedOption; * */ +package it.unimi.dsi.big.util; + +import java.io.IOException; +import java.io.Serializable; + +import com.martiansoftware.jsap.JSAP; +import com.martiansoftware.jsap.JSAPException; +import com.martiansoftware.jsap.JSAPResult; +import com.martiansoftware.jsap.Parameter; +import com.martiansoftware.jsap.SimpleJSAP; +import com.martiansoftware.jsap.Switch; +import com.martiansoftware.jsap.UnflaggedOption; + import it.unimi.dsi.Util; import it.unimi.dsi.fastutil.BigArrays; import it.unimi.dsi.fastutil.io.BinIO; diff --git a/src/it/unimi/dsi/big/util/PrefixMap.java b/src/it/unimi/dsi/big/util/PrefixMap.java index 02065b5..22e533f 100644 --- a/src/it/unimi/dsi/big/util/PrefixMap.java +++ b/src/it/unimi/dsi/big/util/PrefixMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.objects.Object2ObjectFunction; import it.unimi.dsi.util.LongInterval; diff --git a/src/it/unimi/dsi/big/util/SemiExternalGammaBigList.java b/src/it/unimi/dsi/big/util/SemiExternalGammaBigList.java index 4fee0c2..014512f 100644 --- a/src/it/unimi/dsi/big/util/SemiExternalGammaBigList.java +++ b/src/it/unimi/dsi/big/util/SemiExternalGammaBigList.java @@ -1,9 +1,7 @@ -package it.unimi.dsi.big.util; - -/* +/* * DSI utilities * - * Copyright (C) 2007-2020 Sebastiano Vigna + * Copyright (C) 2007-2020 Sebastiano Vigna * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the Free @@ -20,20 +18,22 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + +import java.io.EOFException; +import java.io.IOException; + import it.unimi.dsi.fastutil.longs.AbstractLongBigList; import it.unimi.dsi.fastutil.longs.LongBigList; import it.unimi.dsi.io.InputBitStream; import it.unimi.dsi.io.OutputBitStream; -import java.io.EOFException; -import java.io.IOException; - -/** Provides semi-external random access to a {@linkplain LongBigList big list} - * of {@linkplain OutputBitStream#writeGamma(int) γ-encoded} integers. - * +/** Provides semi-external random access to a {@linkplain LongBigList big list} + * of {@linkplain OutputBitStream#writeGamma(int) γ-encoded} integers. + * * <p>This class is a semi-external {@link it.unimi.dsi.fastutil.longs.LongBigList} that * MG4J uses to access files containing frequencies. - * + * * <p>Instead, this class accesses frequencies in their * compressed forms, and provides entry points for random access to each long. At construction * time, entry points are computed with a certain <em>step</em>, which is the number of longs @@ -41,7 +41,7 @@ import java.io.IOException; * be necessary to read to access a given long. * * <p><strong>Warning:</strong> This class is not thread safe, and needs to be synchronised to be used in a - * multithreaded environment. + * multithreaded environment. * * @author Fabien Campagne * @author Sebastiano Vigna @@ -49,7 +49,7 @@ import java.io.IOException; */ public class SemiExternalGammaBigList extends AbstractLongBigList { public final static int DEFAULT_STEP = 128; - + /** Position in the offset stream for each random access entry point (one each {@link #step} elements). */ private final long[] position; /** Stream over the compressed offset information. */ @@ -60,7 +60,7 @@ public class SemiExternalGammaBigList extends AbstractLongBigList { private final long numLongs; /** Creates a new semi-external list. - * + * * @param longs a bit stream containing γ-encoded longs. * @param step the step used to build random-access entry points, or -1 to get {@link #DEFAULT_STEP}; note that * a step causing more than 2<sup>31</sup> slots will be silently increased. @@ -70,7 +70,7 @@ public class SemiExternalGammaBigList extends AbstractLongBigList { public SemiExternalGammaBigList(final InputBitStream longs, final int step, final long numLongs) throws IOException { // We guarantee that the default step is such that we cannot cause problems. this.step = Math.max(step == -1 ? DEFAULT_STEP : step, (int)(numLongs / (1L << 31))); - int slots = (int)((numLongs + this.step - 1) / this.step); + final int slots = (int)((numLongs + this.step - 1) / this.step); this.position = new long[slots]; this.numLongs = numLongs; this.ibs = longs; @@ -83,19 +83,19 @@ public class SemiExternalGammaBigList extends AbstractLongBigList { } } - + /** Creates a new semi-external list. - * + * * <p>This quick-and-dirty constructor estimates the number of longs by checking * for an {@link EOFException}. - * + * * @param longs a bit stream containing γ-encoded longs. */ - + public SemiExternalGammaBigList(final InputBitStream longs) throws IOException { this(longs, DEFAULT_STEP, estimateNumberOfLongs(longs)); } - + private static int estimateNumberOfLongs(final InputBitStream longs) { int numLongs = 0; try { @@ -105,14 +105,14 @@ public class SemiExternalGammaBigList extends AbstractLongBigList { numLongs++; } } - catch(EOFException e) { + catch(final EOFException e) { return numLongs; } - catch (IOException e) { + catch (final IOException e) { throw new RuntimeException(e); } } - + @Override public final long getLong(final long index) { if (index < 0 || index >= numLongs) throw new IndexOutOfBoundsException(Long.toString(index)); @@ -123,11 +123,11 @@ public class SemiExternalGammaBigList extends AbstractLongBigList { ibs.skipGammas(k); return ibs.readLongGamma(); } - catch(IOException e) { + catch(final IOException e) { throw new RuntimeException(e); } } - + @Override public long size64() { return numLongs; diff --git a/src/it/unimi/dsi/big/util/ShiftAddXorSignedStringMap.java b/src/it/unimi/dsi/big/util/ShiftAddXorSignedStringMap.java index 75537c3..dc07db8 100644 --- a/src/it/unimi/dsi/big/util/ShiftAddXorSignedStringMap.java +++ b/src/it/unimi/dsi/big/util/ShiftAddXorSignedStringMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,18 +18,7 @@ package it.unimi.dsi.big.util; * */ - -import it.unimi.dsi.bits.LongArrayBitVector; -import it.unimi.dsi.fastutil.Function; -import it.unimi.dsi.fastutil.Size64; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.longs.LongBigList; -import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; -import it.unimi.dsi.fastutil.objects.Object2LongFunction; -import it.unimi.dsi.fastutil.objects.ObjectBigList; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.io.LineIterator; -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.big.util; import java.io.FileInputStream; import java.io.IOException; @@ -55,6 +42,18 @@ import com.martiansoftware.jsap.Switch; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; +import it.unimi.dsi.bits.LongArrayBitVector; +import it.unimi.dsi.fastutil.Function; +import it.unimi.dsi.fastutil.Size64; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.longs.LongBigList; +import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; +import it.unimi.dsi.fastutil.objects.Object2LongFunction; +import it.unimi.dsi.fastutil.objects.ObjectBigList; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.io.LineIterator; +import it.unimi.dsi.lang.MutableString; + /** A string map based on a function signed using Shift-Add-Xor hashes. * * <p>A minimal perfect hash function maps a set of string to an initial segment of the natural @@ -137,21 +136,21 @@ public class ShiftAddXorSignedStringMap extends AbstractObject2LongFunction<Char } @Override - public long getLong(Object o) { + public long getLong(final Object o) { final CharSequence s = (CharSequence)o; final long index = function.getLong(s); return checkSignature(s, index) ? index : defRetValue; } @Override - public Long get(Object o) { + public Long get(final Object o) { final CharSequence s = (CharSequence)o; final long index = function.getLong(s); return checkSignature(s, index) ? Long.valueOf(index) : null; } @Override - public boolean containsKey(Object o) { + public boolean containsKey(final Object o) { final CharSequence s = (CharSequence)o; return checkSignature(s, function.getLong(s)); } @@ -186,7 +185,7 @@ public class ShiftAddXorSignedStringMap extends AbstractObject2LongFunction<Char new UnflaggedOption("stringFile", JSAP.STRING_PARSER, JSAP.NO_DEFAULT, JSAP.NOT_REQUIRED, JSAP.NOT_GREEDY, "Read strings from this file instead of standard input."), }); - JSAPResult jsapResult = jsap.parse(arg); + final JSAPResult jsapResult = jsap.parse(arg); if (jsap.messagePrinted()) return; final int bufferSize = jsapResult.getInt("bufferSize"); diff --git a/src/it/unimi/dsi/big/util/StringMap.java b/src/it/unimi/dsi/big/util/StringMap.java index 157d526..27195a6 100644 --- a/src/it/unimi/dsi/big/util/StringMap.java +++ b/src/it/unimi/dsi/big/util/StringMap.java @@ -1,7 +1,3 @@ -package it.unimi.dsi.big.util; - -import java.io.Serializable; - /* * DSI utilities * @@ -22,6 +18,9 @@ import java.io.Serializable; * */ +package it.unimi.dsi.big.util; + +import java.io.Serializable; import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.objects.Object2LongFunction; diff --git a/src/it/unimi/dsi/big/util/StringMaps.java b/src/it/unimi/dsi/big/util/StringMaps.java index d8b16f1..bc141fd 100644 --- a/src/it/unimi/dsi/big/util/StringMaps.java +++ b/src/it/unimi/dsi/big/util/StringMaps.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,9 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + +import java.io.Serializable; import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; import it.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction; @@ -30,8 +31,6 @@ import it.unimi.dsi.fastutil.objects.ObjectBigLists; import it.unimi.dsi.util.Interval; import it.unimi.dsi.util.LongInterval; -import java.io.Serializable; - /** A class providing static methods and objects that do useful things with {@linkplain StringMap string maps} * and {@linkplain PrefixMap prefix maps}. * @@ -68,35 +67,35 @@ public class StringMaps { } @Override - public synchronized long getLong(Object s) { + public synchronized long getLong(final Object s) { return stringMap.getLong(s); } @Override @SuppressWarnings("deprecation") - public synchronized Long get(Object key) { + public synchronized Long get(final Object key) { return stringMap.get(key); } @Override - public synchronized long put(CharSequence key, long value) { + public synchronized long put(final CharSequence key, final long value) { return stringMap.put(key, value); } @Override @SuppressWarnings("deprecation") - public synchronized Long put(CharSequence key, Long value) { + public synchronized Long put(final CharSequence key, final Long value) { return stringMap.put(key, value); } @Override @SuppressWarnings("deprecation") - public synchronized Long remove(Object key) { + public synchronized Long remove(final Object key) { return stringMap.remove(key); } @Override - public synchronized long removeLong(Object key) { + public synchronized long removeLong(final Object key) { return stringMap.removeLong(key); } @@ -106,7 +105,7 @@ public class StringMaps { } @Override - public synchronized boolean containsKey(Object key) { + public synchronized boolean containsKey(final Object key) { return stringMap.containsKey(key); } @@ -116,7 +115,7 @@ public class StringMaps { } @Override - public synchronized void defaultReturnValue(long rv) { + public synchronized void defaultReturnValue(final long rv) { stringMap.defaultReturnValue(rv); } } diff --git a/src/it/unimi/dsi/big/util/TernaryIntervalSearchTree.java b/src/it/unimi/dsi/big/util/TernaryIntervalSearchTree.java index 58d6aa9..8dbfd42 100644 --- a/src/it/unimi/dsi/big/util/TernaryIntervalSearchTree.java +++ b/src/it/unimi/dsi/big/util/TernaryIntervalSearchTree.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,13 +18,7 @@ package it.unimi.dsi.big.util; * */ - -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.lang.MutableString; -import it.unimi.dsi.logging.ProgressLogger; -import it.unimi.dsi.util.LongInterval; -import it.unimi.dsi.util.LongIntervals; +package it.unimi.dsi.big.util; import java.io.IOException; import java.io.InputStreamReader; @@ -44,6 +36,13 @@ import com.martiansoftware.jsap.SimpleJSAP; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.lang.MutableString; +import it.unimi.dsi.logging.ProgressLogger; +import it.unimi.dsi.util.LongInterval; +import it.unimi.dsi.util.LongIntervals; + /** Ternary interval search trees. * * <p><em>Ternary search trees</em> are a data structure used to store words over an alphabet; they are @@ -308,7 +307,7 @@ public class TernaryIntervalSearchTree extends AbstractPrefixMap implements Seri } @Override - public boolean containsKey(Object o) { + public boolean containsKey(final Object o) { return getIndex((CharSequence)o) != -1; } @@ -455,12 +454,12 @@ public class TernaryIntervalSearchTree extends AbstractPrefixMap implements Seri new UnflaggedOption("tree", JSAP.STRING_PARSER, JSAP.NO_DEFAULT, JSAP.REQUIRED, JSAP.NOT_GREEDY, "The filename for the serialised tree.") }); - JSAPResult jsapResult = jsap.parse(arg); + final JSAPResult jsapResult = jsap.parse(arg); if (jsap.messagePrinted()) return; final TernaryIntervalSearchTree tree = new TernaryIntervalSearchTree(); - MutableString term = new MutableString(); + final MutableString term = new MutableString(); final ProgressLogger pl = new ProgressLogger(); pl.itemsName = "terms"; @SuppressWarnings("resource") diff --git a/src/it/unimi/dsi/bits/AbstractBitVector.java b/src/it/unimi/dsi/bits/AbstractBitVector.java index 4b1c546..ca05909 100644 --- a/src/it/unimi/dsi/bits/AbstractBitVector.java +++ b/src/it/unimi/dsi/bits/AbstractBitVector.java @@ -1,8 +1,3 @@ -package it.unimi.dsi.bits; - -import java.io.Serializable; -import java.util.NoSuchElementException; - /* * DSI utilities * @@ -23,6 +18,11 @@ import java.util.NoSuchElementException; * */ +package it.unimi.dsi.bits; + +import java.io.Serializable; +import java.util.NoSuchElementException; + import it.unimi.dsi.fastutil.BigList; import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.booleans.AbstractBooleanBigList; diff --git a/src/it/unimi/dsi/bits/BitVector.java b/src/it/unimi/dsi/bits/BitVector.java index 5023457..29c3bef 100644 --- a/src/it/unimi/dsi/bits/BitVector.java +++ b/src/it/unimi/dsi/bits/BitVector.java @@ -1,8 +1,3 @@ -package it.unimi.dsi.bits; - -import java.util.List; -import java.util.RandomAccess; - /* * DSI utilities * @@ -23,6 +18,11 @@ import java.util.RandomAccess; * */ +package it.unimi.dsi.bits; + +import java.util.List; +import java.util.RandomAccess; + import it.unimi.dsi.fastutil.booleans.BooleanBigList; import it.unimi.dsi.fastutil.booleans.BooleanList; import it.unimi.dsi.fastutil.longs.LongBigList; diff --git a/src/it/unimi/dsi/bits/BitVectors.java b/src/it/unimi/dsi/bits/BitVectors.java index 5ec71ee..9957630 100644 --- a/src/it/unimi/dsi/bits/BitVectors.java +++ b/src/it/unimi/dsi/bits/BitVectors.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,7 +18,7 @@ package it.unimi.dsi.bits; * */ -import it.unimi.dsi.io.OfflineIterable; +package it.unimi.dsi.bits; import java.io.DataInput; import java.io.DataInputStream; @@ -28,6 +26,8 @@ import java.io.DataOutput; import java.io.DataOutputStream; import java.io.IOException; +import it.unimi.dsi.io.OfflineIterable; + /** A class providing static methods and objects that do useful things with bit vectors. * @@ -159,7 +159,7 @@ public class BitVectors { * @see #writeFast(BitVector, DataOutput) * @see #readFast(DataInput) */ - public static LongArrayBitVector readFast(DataInput dis, final LongArrayBitVector bv) throws IOException { + public static LongArrayBitVector readFast(final DataInput dis, final LongArrayBitVector bv) throws IOException { final long length = dis.readLong(); bv.ensureCapacity(length); final int l = LongArrayBitVector.numWords(length); @@ -170,12 +170,12 @@ public class BitVectors { private static class BitVectorOfflineSerializer implements OfflineIterable.Serializer<BitVector,LongArrayBitVector> { @Override - public void write(BitVector bv, DataOutput dos) throws IOException { + public void write(final BitVector bv, final DataOutput dos) throws IOException { writeFast(bv, dos); } @Override - public void read(DataInput dis, LongArrayBitVector bv) throws IOException { + public void read(final DataInput dis, final LongArrayBitVector bv) throws IOException { readFast(dis, bv); } } diff --git a/src/it/unimi/dsi/bits/BooleanListBitVector.java b/src/it/unimi/dsi/bits/BooleanListBitVector.java index 688dba4..faee1c4 100644 --- a/src/it/unimi/dsi/bits/BooleanListBitVector.java +++ b/src/it/unimi/dsi/bits/BooleanListBitVector.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + +import java.io.Serializable; + import it.unimi.dsi.fastutil.booleans.BooleanBigArrayBigList; import it.unimi.dsi.fastutil.booleans.BooleanBigList; import it.unimi.dsi.fastutil.booleans.BooleanBigLists; import it.unimi.dsi.fastutil.booleans.BooleanList; -import java.io.Serializable; - /** A boolean-list based implementation of {@link BitVector}. * * <P>This implementation of a bit vector is based on a backing @@ -56,7 +56,7 @@ public class BooleanListBitVector extends AbstractBitVector implements Serializa /** Creates a new bit vector with given bits. */ public static BooleanListBitVector of(final int... bit) { final BooleanListBitVector bitVector = BooleanListBitVector.getInstance(bit.length); - for(int b : bit) bitVector.add(b); + for(final int b : bit) bitVector.add(b); return bitVector; } diff --git a/src/it/unimi/dsi/bits/Fast.java b/src/it/unimi/dsi/bits/Fast.java index 120370b..cbfa9b2 100644 --- a/src/it/unimi/dsi/bits/Fast.java +++ b/src/it/unimi/dsi/bits/Fast.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; /** All-purpose optimised bit-fiddling static-method container class. * diff --git a/src/it/unimi/dsi/bits/HuTuckerTransformationStrategy.java b/src/it/unimi/dsi/bits/HuTuckerTransformationStrategy.java index ef79712..e8afc92 100644 --- a/src/it/unimi/dsi/bits/HuTuckerTransformationStrategy.java +++ b/src/it/unimi/dsi/bits/HuTuckerTransformationStrategy.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,12 +18,14 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + +import java.util.Iterator; + import it.unimi.dsi.compression.HuTuckerCodec; import it.unimi.dsi.fastutil.chars.Char2IntMap; import it.unimi.dsi.fastutil.chars.Char2IntOpenHashMap; -import java.util.Iterator; - /** A transformation strategy mapping strings to their {@linkplain HuTuckerCodec Hu-Tucker encoding}. The * encoding is guaranteed to preserve lexicographical ordering. */ @@ -42,22 +42,22 @@ public class HuTuckerTransformationStrategy extends PrefixCoderTransformationStr this(getCoder(iterable, prefixFree), prefixFree); } - protected HuTuckerTransformationStrategy(PrefixCoderTransformationStrategy huTuckerTransformationStrategy) { + protected HuTuckerTransformationStrategy(final PrefixCoderTransformationStrategy huTuckerTransformationStrategy) { super(huTuckerTransformationStrategy); } - protected HuTuckerTransformationStrategy(Object[] a, boolean prefixFree) { + protected HuTuckerTransformationStrategy(final Object[] a, final boolean prefixFree) { super((BitVector[])a[0], (Char2IntOpenHashMap)a[1], prefixFree); } - private static Object[] getCoder(final Iterable<? extends CharSequence> iterable, boolean prefixFree) { + private static Object[] getCoder(final Iterable<? extends CharSequence> iterable, final boolean prefixFree) { // First of all, we gather frequencies for all Unicode characters - long[] frequency = new long[Character.MAX_VALUE + 1]; + final long[] frequency = new long[Character.MAX_VALUE + 1]; int maxWordLength = 0; CharSequence s; int n = 0; - for(Iterator<? extends CharSequence> i = iterable.iterator(); i.hasNext();) { + for(final Iterator<? extends CharSequence> i = iterable.iterator(); i.hasNext();) { s = i.next(); maxWordLength = Math.max(s.length(), maxWordLength); for(int j = s.length(); j-- != 0;) frequency[s.charAt(j)]++; @@ -69,7 +69,7 @@ public class HuTuckerTransformationStrategy extends PrefixCoderTransformationStr for(int i = frequency.length; i-- != 0;) if (frequency[i] != 0) count++; /* Now we remap used characters in f, building at the same time the map from characters to symbols (except for the stop character). */ - long[] packedFrequency = new long[count]; + final long[] packedFrequency = new long[count]; final Char2IntMap char2symbol = new Char2IntOpenHashMap(count); for(int i = frequency.length, k = count; i-- != 0;) { diff --git a/src/it/unimi/dsi/bits/LongArrayBitVector.java b/src/it/unimi/dsi/bits/LongArrayBitVector.java index 28d5852..3a89c7d 100644 --- a/src/it/unimi/dsi/bits/LongArrayBitVector.java +++ b/src/it/unimi/dsi/bits/LongArrayBitVector.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; diff --git a/src/it/unimi/dsi/bits/LongBigArrayBitVector.java b/src/it/unimi/dsi/bits/LongBigArrayBitVector.java index 17aaa08..0d709e0 100644 --- a/src/it/unimi/dsi/bits/LongBigArrayBitVector.java +++ b/src/it/unimi/dsi/bits/LongBigArrayBitVector.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static it.unimi.dsi.bits.LongArrayBitVector.bit; import static it.unimi.dsi.bits.LongArrayBitVector.mask; import static it.unimi.dsi.fastutil.BigArrays.SEGMENT_SIZE; diff --git a/src/it/unimi/dsi/bits/PrefixCoderTransformationStrategy.java b/src/it/unimi/dsi/bits/PrefixCoderTransformationStrategy.java index 3c000be..0c4bc74 100644 --- a/src/it/unimi/dsi/bits/PrefixCoderTransformationStrategy.java +++ b/src/it/unimi/dsi/bits/PrefixCoderTransformationStrategy.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import it.unimi.dsi.compression.PrefixCodec; import it.unimi.dsi.compression.PrefixCoder; import it.unimi.dsi.fastutil.chars.Char2IntMap; diff --git a/src/it/unimi/dsi/bits/TransformationStrategies.java b/src/it/unimi/dsi/bits/TransformationStrategies.java index d7550a1..2bc650e 100644 --- a/src/it/unimi/dsi/bits/TransformationStrategies.java +++ b/src/it/unimi/dsi/bits/TransformationStrategies.java @@ -1,3 +1,23 @@ +/* + * DSI utilities + * + * Copyright (C) 2007-2020 Sebastiano Vigna + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + * + */ + package it.unimi.dsi.bits; import java.io.Serializable; @@ -111,7 +131,7 @@ public class TransformationStrategies { return length(cs.toString()); } - private long length(String s) { + private long length(final String s) { return s.codePointCount(0, s.length()) * (long)Integer.SIZE; } @@ -171,7 +191,7 @@ public class TransformationStrategies { * * @param prefixFree if true, the resulting set of binary words will be made prefix free by adding a NUL at the end of the string. */ - protected Utf32TransformationStrategy(boolean prefixFree) { + protected Utf32TransformationStrategy(final boolean prefixFree) { this.prefixFree = prefixFree; } @@ -180,7 +200,7 @@ public class TransformationStrategies { return length(cs.toString()); } - private long length(String s) { + private long length(final String s) { return (s.codePointCount(0, s.length()) + (prefixFree ? 1 : 0)) * (long)Integer.SIZE; } @@ -241,7 +261,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); final int charIndex = (int)(index / Character.SIZE); return (a[charIndex] & 1 << index % Character.SIZE) != 0; @@ -291,7 +311,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); final int charIndex = (int)(index / Character.SIZE); return (s.charAt(charIndex) & 1 << index % Character.SIZE) != 0; @@ -384,7 +404,7 @@ public class TransformationStrategies { * * @param prefixFree if true, the resulting set of binary words will be made prefix free by adding a NUL at the end of the string. */ - protected Utf16TransformationStrategy(boolean prefixFree) { + protected Utf16TransformationStrategy(final boolean prefixFree) { this.prefixFree = prefixFree; } @@ -406,7 +426,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); if (index >= actualEnd) return false; final int charIndex = (int)(index / Character.SIZE); @@ -459,7 +479,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); if (index >= actualEnd) return false; final int charIndex = (int)(index / Character.SIZE); @@ -553,7 +573,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); final int byteIndex = (int)(index / Byte.SIZE); return (s.charAt(byteIndex) & 1 << index % Byte.SIZE) != 0; @@ -614,7 +634,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); final int byteIndex = (int)(index / Byte.SIZE); return (a[byteIndex] & 1 << index % Byte.SIZE) != 0; @@ -725,7 +745,7 @@ public class TransformationStrategies { * * @param prefixFree if true, the resulting set of binary words will be made prefix free by adding a NUL at the end of the string. */ - protected ISOTransformationStrategy(boolean prefixFree) { + protected ISOTransformationStrategy(final boolean prefixFree) { this.prefixFree = prefixFree; } @@ -747,7 +767,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); if (index >= actualEnd) return false; final int byteIndex = (int)(index / Byte.SIZE); @@ -811,7 +831,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index > length) throw new IndexOutOfBoundsException(); if (index >= actualEnd) return false; final int byteIndex = (int)(index / Byte.SIZE); @@ -1159,7 +1179,7 @@ public class TransformationStrategies { } @Override - public BitVector get(int index) { + public BitVector get(final int index) { return transformationStrategy.toBitVector(list.get(index)); } @@ -1210,7 +1230,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index >= length) throw new IndexOutOfBoundsException(); if (index == length - 1) return false; if (index % 2 == 0) return true; @@ -1311,7 +1331,7 @@ public class TransformationStrategies { } @Override - public boolean getBoolean(long index) { + public boolean getBoolean(final long index) { if (index >= Long.SIZE) throw new IndexOutOfBoundsException(); return (v & 1L << index) != 0; } diff --git a/src/it/unimi/dsi/bits/TransformationStrategy.java b/src/it/unimi/dsi/bits/TransformationStrategy.java index c7530e7..1c839a4 100644 --- a/src/it/unimi/dsi/bits/TransformationStrategy.java +++ b/src/it/unimi/dsi/bits/TransformationStrategy.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import java.io.Serializable; /** A generic transformation from objects of a given type to bit vector. Most useful diff --git a/src/it/unimi/dsi/compression/CanonicalFast64CodeWordDecoder.java b/src/it/unimi/dsi/compression/CanonicalFast64CodeWordDecoder.java index a2af3e1..ad0a81a 100644 --- a/src/it/unimi/dsi/compression/CanonicalFast64CodeWordDecoder.java +++ b/src/it/unimi/dsi/compression/CanonicalFast64CodeWordDecoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,12 +18,14 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.fastutil.booleans.BooleanIterator; -import it.unimi.dsi.io.InputBitStream; +package it.unimi.dsi.compression; import java.io.IOException; import java.io.Serializable; +import it.unimi.dsi.fastutil.booleans.BooleanIterator; +import it.unimi.dsi.io.InputBitStream; + /** A fast table-based decoder for canonical Huffman codes supporting only codes with limited (less than 64 bits) codewords. * We use the technique described by Daniel S. Hirschberg and Debra A. Lelewer, “Efficient Decoding of Prefix Codes”, * <i>Comm. ACM</i>, 33(4): 449−459, 1990. */ diff --git a/src/it/unimi/dsi/compression/CodeWordCoder.java b/src/it/unimi/dsi/compression/CodeWordCoder.java index a3f8562..9f1e970 100644 --- a/src/it/unimi/dsi/compression/CodeWordCoder.java +++ b/src/it/unimi/dsi/compression/CodeWordCoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,14 +18,16 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + +import java.io.IOException; +import java.io.Serializable; + import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.fastutil.booleans.BooleanIterator; import it.unimi.dsi.fastutil.booleans.BooleanIterators; import it.unimi.dsi.io.OutputBitStream; -import java.io.IOException; -import java.io.Serializable; - /** A coder based on a set of codewords. */ public class CodeWordCoder implements PrefixCoder, Serializable { diff --git a/src/it/unimi/dsi/compression/Codec.java b/src/it/unimi/dsi/compression/Codec.java index fb4698f..981d652 100644 --- a/src/it/unimi/dsi/compression/Codec.java +++ b/src/it/unimi/dsi/compression/Codec.java @@ -1,6 +1,3 @@ -package it.unimi.dsi.compression; - - /* * DSI utilities * @@ -21,6 +18,8 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + /** An abstract factory corresponding to an instance of a specific compression technique. * * <P>An implementation of this interface provides coders and decoders. The diff --git a/src/it/unimi/dsi/compression/Coder.java b/src/it/unimi/dsi/compression/Coder.java index 6dd81b1..9e46673 100644 --- a/src/it/unimi/dsi/compression/Coder.java +++ b/src/it/unimi/dsi/compression/Coder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.fastutil.booleans.BooleanIterator; -import it.unimi.dsi.io.OutputBitStream; +package it.unimi.dsi.compression; import java.io.IOException; +import it.unimi.dsi.fastutil.booleans.BooleanIterator; +import it.unimi.dsi.io.OutputBitStream; + /** Coding methods for a specific compression technique. */ public interface Coder { /** Encodes a symbol. diff --git a/src/it/unimi/dsi/compression/Decoder.java b/src/it/unimi/dsi/compression/Decoder.java index ed14506..b15b96c 100644 --- a/src/it/unimi/dsi/compression/Decoder.java +++ b/src/it/unimi/dsi/compression/Decoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.fastutil.booleans.BooleanIterator; -import it.unimi.dsi.io.InputBitStream; +package it.unimi.dsi.compression; import java.io.IOException; +import it.unimi.dsi.fastutil.booleans.BooleanIterator; +import it.unimi.dsi.io.InputBitStream; + /** Decoding methods for a specific compression technique. */ public interface Decoder { diff --git a/src/it/unimi/dsi/compression/Fast64CodeWordCoder.java b/src/it/unimi/dsi/compression/Fast64CodeWordCoder.java index bf4643f..37c8e62 100644 --- a/src/it/unimi/dsi/compression/Fast64CodeWordCoder.java +++ b/src/it/unimi/dsi/compression/Fast64CodeWordCoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.bits.BitVector; -import it.unimi.dsi.io.OutputBitStream; +package it.unimi.dsi.compression; import java.io.IOException; +import it.unimi.dsi.bits.BitVector; +import it.unimi.dsi.io.OutputBitStream; + /** A fast coder based on a set of codewords of length at most 64. */ public final class Fast64CodeWordCoder extends CodeWordCoder { diff --git a/src/it/unimi/dsi/compression/HuTuckerCodec.java b/src/it/unimi/dsi/compression/HuTuckerCodec.java index d88414d..4d08c6d 100644 --- a/src/it/unimi/dsi/compression/HuTuckerCodec.java +++ b/src/it/unimi/dsi/compression/HuTuckerCodec.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.bits.BitVector; +package it.unimi.dsi.compression; import java.io.Serializable; import java.util.Arrays; +import it.unimi.dsi.bits.BitVector; + /** An implementation of the Hu–Tucker optimal lexicographical prefix-free code. * * <p>The familiar Huffman coding technique can be extended so to preserve the order in which @@ -223,7 +223,7 @@ public class HuTuckerCodec implements PrefixCodec, Serializable { if (n.symbol != -1) return new TreeDecoder.LeafNode(n.symbol); - TreeDecoder.Node newNode = new TreeDecoder.Node(); + final TreeDecoder.Node newNode = new TreeDecoder.Node(); newNode.left = rebuildTree((LevelNode) n.left); newNode.right = rebuildTree((LevelNode) n.right); diff --git a/src/it/unimi/dsi/compression/HuffmanCodec.java b/src/it/unimi/dsi/compression/HuffmanCodec.java index aef1d23..dd84fb1 100644 --- a/src/it/unimi/dsi/compression/HuffmanCodec.java +++ b/src/it/unimi/dsi/compression/HuffmanCodec.java @@ -1,8 +1,3 @@ -package it.unimi.dsi.compression; - -import java.io.Serializable; -import java.util.Arrays; - /* * DSI utilities * @@ -23,6 +18,11 @@ import java.util.Arrays; * */ +package it.unimi.dsi.compression; + +import java.io.Serializable; +import java.util.Arrays; + import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.bits.LongArrayBitVector; import it.unimi.dsi.fastutil.ints.IntArrays; diff --git a/src/it/unimi/dsi/compression/PrefixCodec.java b/src/it/unimi/dsi/compression/PrefixCodec.java index 1b21867..f36e2b7 100644 --- a/src/it/unimi/dsi/compression/PrefixCodec.java +++ b/src/it/unimi/dsi/compression/PrefixCodec.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + import it.unimi.dsi.bits.BitVector; /** A codec based on a set of prefix-free codewords. diff --git a/src/it/unimi/dsi/compression/PrefixCoder.java b/src/it/unimi/dsi/compression/PrefixCoder.java index 6fba66f..f482b45 100644 --- a/src/it/unimi/dsi/compression/PrefixCoder.java +++ b/src/it/unimi/dsi/compression/PrefixCoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,8 +18,9 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.bits.BitVector; +package it.unimi.dsi.compression; +import it.unimi.dsi.bits.BitVector; /** A coder based on a set of prefix-free codewords. * diff --git a/src/it/unimi/dsi/compression/TreeDecoder.java b/src/it/unimi/dsi/compression/TreeDecoder.java index 8e2be82..840679f 100644 --- a/src/it/unimi/dsi/compression/TreeDecoder.java +++ b/src/it/unimi/dsi/compression/TreeDecoder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,15 +18,17 @@ package it.unimi.dsi.compression; * */ -import it.unimi.dsi.bits.BitVector; -import it.unimi.dsi.bits.LongArrayBitVector; -import it.unimi.dsi.fastutil.booleans.BooleanIterator; -import it.unimi.dsi.io.InputBitStream; +package it.unimi.dsi.compression; import java.io.IOException; import java.io.Serializable; import java.util.Arrays; +import it.unimi.dsi.bits.BitVector; +import it.unimi.dsi.bits.LongArrayBitVector; +import it.unimi.dsi.fastutil.booleans.BooleanIterator; +import it.unimi.dsi.io.InputBitStream; + /** A decoder that follows 0/1 labelled paths in a tree. * * <p>Additional, the {@link #buildCodes()} method returns a vector @@ -87,12 +87,12 @@ public final class TreeDecoder implements Decoder, Serializable { * @param lexSortedCodeWord a vector of lexically sorted codeWords. * @param symbol a mapping from codewords to symbols. */ - public TreeDecoder(BitVector[] lexSortedCodeWord, int[] symbol) { + public TreeDecoder(final BitVector[] lexSortedCodeWord, final int[] symbol) { this(buildTree(lexSortedCodeWord, symbol, 0, 0, lexSortedCodeWord.length), lexSortedCodeWord.length); } - private static Node buildTree(BitVector lexSortedCodeWords[], final int[] symbol, int prefix, int offset, int length) { + private static Node buildTree(final BitVector lexSortedCodeWords[], final int[] symbol, final int prefix, final int offset, final int length) { if (DEBUG) { System.err.println("****** " + offset + " " + length); System.err.println(Arrays.toString(lexSortedCodeWords)); diff --git a/src/it/unimi/dsi/io/ByteBufferInputStream.java b/src/it/unimi/dsi/io/ByteBufferInputStream.java index 5875357..1a2124a 100644 --- a/src/it/unimi/dsi/io/ByteBufferInputStream.java +++ b/src/it/unimi/dsi/io/ByteBufferInputStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,8 +18,7 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.io.MeasurableInputStream; -import it.unimi.dsi.fastutil.io.RepositionableStream; +package it.unimi.dsi.io; import java.io.IOException; import java.io.InputStream; @@ -31,6 +28,9 @@ import java.nio.channels.FileChannel; import java.nio.channels.FileChannel.MapMode; import java.util.Arrays; +import it.unimi.dsi.fastutil.io.MeasurableInputStream; +import it.unimi.dsi.fastutil.io.RepositionableStream; + /** A bridge between byte {@linkplain ByteBuffer buffers} and {@linkplain InputStream input streams}. * diff --git a/src/it/unimi/dsi/io/ByteDiskQueue.java b/src/it/unimi/dsi/io/ByteDiskQueue.java index 89faf52..3231cc2 100644 --- a/src/it/unimi/dsi/io/ByteDiskQueue.java +++ b/src/it/unimi/dsi/io/ByteDiskQueue.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import java.io.Closeable; import java.io.File; import java.io.FileOutputStream; diff --git a/src/it/unimi/dsi/io/DebugInputBitStream.java b/src/it/unimi/dsi/io/DebugInputBitStream.java index ffce08f..264a4b5 100644 --- a/src/it/unimi/dsi/io/DebugInputBitStream.java +++ b/src/it/unimi/dsi/io/DebugInputBitStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.io; import java.io.IOException; import java.io.PrintStream; +import it.unimi.dsi.lang.MutableString; + /** A debugging wrapper for input bit streams. * @@ -93,16 +93,16 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public void position(long position) throws IOException { + public void position(final long position) throws IOException { pw.print(" ->" + position); ibs.position(position); } @Override - public void read(byte[] bits, int len) throws IOException { + public void read(final byte[] bits, final int len) throws IOException { ibs.read(bits, len); - MutableString s = new MutableString(" {"); - for(int i = 0; i < bits.length; i++) s.append(DebugOutputBitStream.byte2Binary(bits[i])); + final MutableString s = new MutableString(" {"); + for (final byte bit : bits) s.append(DebugOutputBitStream.byte2Binary(bit)); pw.print(s.length(len).append("}")); } @@ -119,7 +119,7 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public void readBits(long readBits) { + public void readBits(final long readBits) { ibs.readBits(readBits); } @@ -138,28 +138,28 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public int readGolomb(int b, int log2b) throws IOException { + public int readGolomb(final int b, final int log2b) throws IOException { final int x = ibs.readGolomb(b, log2b); pw.print(" {G:" + x + ":" + b + "}"); return x; } @Override - public int readGolomb(int b) throws IOException { + public int readGolomb(final int b) throws IOException { final int x = ibs.readGolomb(b); pw.print(" {G:" + x + ":" + b + "}"); return x; } @Override - public int readInt(int len) throws IOException { + public int readInt(final int len) throws IOException { final int x = ibs.readInt(len); pw.print(" {" + DebugOutputBitStream.int2Binary(x, len) + "}"); return x; } @Override - public long readLong(int len) throws IOException { + public long readLong(final int len) throws IOException { final long x = ibs.readLong(len); pw.print(" {" + DebugOutputBitStream.int2Binary(x, len) + "}"); return x; @@ -180,28 +180,28 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public long readLongGolomb(long b, int log2b) throws IOException { + public long readLongGolomb(final long b, final int log2b) throws IOException { final long x = ibs.readLongGolomb(b, log2b); pw.print(" {G:" + x + ":" + b + "}"); return x; } @Override - public long readLongGolomb(long b) throws IOException { + public long readLongGolomb(final long b) throws IOException { final long x = ibs.readLongGolomb(b); pw.print(" {G:" + x + ":" + b + "}"); return x; } @Override - public long readLongMinimalBinary(long b, int log2b) throws IOException { + public long readLongMinimalBinary(final long b, final int log2b) throws IOException { final long x = ibs.readLongMinimalBinary(b, log2b); pw.print(" {m:" + x + "<" + b + "}"); return x; } @Override - public long readLongMinimalBinary(long b) throws IOException { + public long readLongMinimalBinary(final long b) throws IOException { final long x = ibs.readLongMinimalBinary(b); pw.print(" {m:" + x + "<" + b + "}"); return x; @@ -215,7 +215,7 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public long readLongSkewedGolomb(long b) throws IOException { + public long readLongSkewedGolomb(final long b) throws IOException { final long x = ibs.readLongSkewedGolomb(b); pw.print(" {SG:" + x + ":" + b + "}"); return x; @@ -229,14 +229,14 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public long readLongZeta(int k) throws IOException { + public long readLongZeta(final int k) throws IOException { final long x = ibs.readLongZeta(k); pw.print(" {z" + k + ":" + x + "}"); return x; } @Override - public int readMinimalBinary(int b, int log2b) throws IOException { + public int readMinimalBinary(final int b, final int log2b) throws IOException { final int x = ibs.readMinimalBinary(b, log2b); pw.print(" {m:" + x + "<" + b + "}"); return x; @@ -244,7 +244,7 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public int readMinimalBinary(int b) throws IOException { + public int readMinimalBinary(final int b) throws IOException { final int x = ibs.readMinimalBinary(b); pw.print(" {m:" + x + "<" + b + "}"); return x; @@ -258,7 +258,7 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public int readSkewedGolomb(int b) throws IOException { + public int readSkewedGolomb(final int b) throws IOException { final int x = ibs.readSkewedGolomb(b); pw.print(" {SG:" + x + ":" + b + "}"); return x; @@ -272,7 +272,7 @@ public class DebugInputBitStream extends InputBitStream { } @Override - public int readZeta(int k) throws IOException { + public int readZeta(final int k) throws IOException { final int x = ibs.readZeta(k); pw.print(" {z" + k + ":" + x + "}"); return x; @@ -286,13 +286,13 @@ public class DebugInputBitStream extends InputBitStream { @Override @Deprecated - public int skip(int n) { + public int skip(final int n) { pw.print(" {+>" + n + "}"); return ibs.skip(n); } @Override - public long skip(long n) throws IOException { + public long skip(final long n) throws IOException { pw.print(" {+>" + n + "}"); return ibs.skip(n); } diff --git a/src/it/unimi/dsi/io/DebugOutputBitStream.java b/src/it/unimi/dsi/io/DebugOutputBitStream.java index b4fa6e7..e162516 100644 --- a/src/it/unimi/dsi/io/DebugOutputBitStream.java +++ b/src/it/unimi/dsi/io/DebugOutputBitStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.io; import java.io.IOException; import java.io.PrintStream; +import it.unimi.dsi.lang.MutableString; + /** A debugging wrapper for output bit streams. * * <P>This class can be used to wrap an output bit stream. The semantics of the @@ -114,7 +114,7 @@ public class DebugOutputBitStream extends OutputBitStream { } static MutableString byte2Binary(int x) { - MutableString s = new MutableString(); + final MutableString s = new MutableString(); for(int i = 0 ; i < 8; i++) { s.append((char)('0' + (x % 2))); x >>= 1; @@ -123,7 +123,7 @@ public class DebugOutputBitStream extends OutputBitStream { } static MutableString int2Binary(long x, final int len) { - MutableString s = new MutableString(); + final MutableString s = new MutableString(); for(int i = 0 ; i < 64; i++) { s.append((char)('0' + (x % 2))); x >>= 1; @@ -134,8 +134,8 @@ public class DebugOutputBitStream extends OutputBitStream { @Override public long write(final byte bits[], final long len) throws IOException { if (len > Integer.MAX_VALUE) throw new IllegalArgumentException(); - MutableString s = new MutableString(" {"); - for(int i = 0; i < bits.length; i++) s.append(byte2Binary(bits[i])); + final MutableString s = new MutableString(" {"); + for (final byte bit : bits) s.append(byte2Binary(bit)); pw.print(s.length((int)len).append("}")); return obs.write(bits, len); } diff --git a/src/it/unimi/dsi/io/DelimitedWordReader.java b/src/it/unimi/dsi/io/DelimitedWordReader.java index 6e20b8a..5f055fe 100644 --- a/src/it/unimi/dsi/io/DelimitedWordReader.java +++ b/src/it/unimi/dsi/io/DelimitedWordReader.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,9 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + +import java.io.Reader; import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.chars.CharOpenHashSet; @@ -27,8 +28,6 @@ import it.unimi.dsi.fastutil.chars.CharSet; import it.unimi.dsi.fastutil.chars.CharSets; import it.unimi.dsi.lang.MutableString; -import java.io.Reader; - /** A word reader that breaks words on a given set of characters. * * <p>This class is a simple subclass of {@link FastBufferedReader}. It @@ -45,7 +44,7 @@ public class DelimitedWordReader extends FastBufferedReader { private final CharOpenHashSet delimiters; @Override - protected boolean isWordConstituent(char c) { + protected boolean isWordConstituent(final char c) { return ! delimiters.contains(c); } @@ -60,7 +59,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param bufferSize the size in bytes of the internal buffer. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(int bufferSize, CharSet delimiters) { + public DelimitedWordReader(final int bufferSize, final CharSet delimiters) { super(bufferSize); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -70,7 +69,7 @@ public class DelimitedWordReader extends FastBufferedReader { * The wrapped reader will have to be set later using {@link #setReader(Reader)}. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(CharSet delimiters) { + public DelimitedWordReader(final CharSet delimiters) { this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); } @@ -84,7 +83,7 @@ public class DelimitedWordReader extends FastBufferedReader { * * @param delimiters a set of characters that will be considered word delimiters, specified as a string. */ - public DelimitedWordReader(String delimiters) { + public DelimitedWordReader(final String delimiters) { this(new CharOpenHashSet(delimiters.toCharArray())); } @@ -94,7 +93,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param bufferSize the size in bytes of the internal buffer, specified as a string. * @param delimiters a set of characters that will be considered word delimiters, specified as a string. */ - public DelimitedWordReader(String bufferSize, String delimiters) { + public DelimitedWordReader(final String bufferSize, final String delimiters) { this(Integer.parseInt(bufferSize), new CharOpenHashSet(delimiters.toCharArray())); } @@ -104,7 +103,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param bufferSize the size in bytes of the internal buffer. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(Reader r, int bufferSize, CharSet delimiters) { + public DelimitedWordReader(final Reader r, final int bufferSize, final CharSet delimiters) { super(r, bufferSize); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -115,7 +114,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param r a reader to wrap. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(Reader r, CharSet delimiters) { + public DelimitedWordReader(final Reader r, final CharSet delimiters) { super(r); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -131,7 +130,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param length the number of character to be used. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(char[] array, int offset, int length, CharSet delimiters) { + public DelimitedWordReader(final char[] array, final int offset, final int length, final CharSet delimiters) { super(array, offset, length); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -145,7 +144,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param array the array that will be wrapped by the reader. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(char[] array, CharSet delimiters) { + public DelimitedWordReader(final char[] array, final CharSet delimiters) { super(array); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -159,7 +158,7 @@ public class DelimitedWordReader extends FastBufferedReader { * @param s the mutable string that will be wrapped by the reader. * @param delimiters a set of characters that will be considered word delimiters. */ - public DelimitedWordReader(MutableString s, CharSet delimiters) { + public DelimitedWordReader(final MutableString s, final CharSet delimiters) { super(s, CharSets.EMPTY_SET); this.delimiters = new CharOpenHashSet(delimiters, Hash.VERY_FAST_LOAD_FACTOR); addCrLf(); @@ -179,10 +178,10 @@ public class DelimitedWordReader extends FastBufferedReader { @Override public String toString() { final String className = getClass().getName(); - CharOpenHashSet additionalDelimiters = delimiters.clone(); + final CharOpenHashSet additionalDelimiters = delimiters.clone(); additionalDelimiters.remove('\n'); additionalDelimiters.remove('\r'); - String delimiters = new String(additionalDelimiters.toCharArray()); + final String delimiters = new String(additionalDelimiters.toCharArray()); if (bufferSize == DEFAULT_BUFFER_SIZE) return className + "(\"" + delimiters + "\")"; return className + "(" + bufferSize + ",\"" + delimiters + "\")"; } diff --git a/src/it/unimi/dsi/io/FastBufferedReader.java b/src/it/unimi/dsi/io/FastBufferedReader.java index 94a7210..f4ae8b0 100644 --- a/src/it/unimi/dsi/io/FastBufferedReader.java +++ b/src/it/unimi/dsi/io/FastBufferedReader.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,12 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.Reader; + import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.chars.CharArrays; import it.unimi.dsi.fastutil.chars.CharOpenHashSet; @@ -27,10 +31,6 @@ import it.unimi.dsi.fastutil.chars.CharSet; import it.unimi.dsi.fastutil.chars.CharSets; import it.unimi.dsi.lang.MutableString; -import java.io.IOException; -import java.io.ObjectInputStream; -import java.io.Reader; - /** A lightweight, unsynchronised buffered reader based on * {@linkplain it.unimi.dsi.lang.MutableString mutable strings}. * @@ -471,7 +471,7 @@ public class FastBufferedReader extends Reader implements WordReader { final String className = getClass().getName(); if (bufferSize == DEFAULT_BUFFER_SIZE && wordConstituents.isEmpty()) return className; if (wordConstituents.isEmpty()) return className + "(" + bufferSize + ")"; - String wordConstituents = new String(this.wordConstituents.toCharArray()); + final String wordConstituents = new String(this.wordConstituents.toCharArray()); if (bufferSize == DEFAULT_BUFFER_SIZE) return className + "(\"" + wordConstituents + "\")"; return className + "(" + bufferSize + ",\"" + wordConstituents + "\")"; } diff --git a/src/it/unimi/dsi/io/FileLinesCollection.java b/src/it/unimi/dsi/io/FileLinesCollection.java index 9e9f70f..58e30a2 100644 --- a/src/it/unimi/dsi/io/FileLinesCollection.java +++ b/src/it/unimi/dsi/io/FileLinesCollection.java @@ -1,15 +1,3 @@ -package it.unimi.dsi.io; - -import java.io.Closeable; -import java.io.FileInputStream; -import java.io.FileReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.util.AbstractCollection; -import java.util.Iterator; -import java.util.NoSuchElementException; -import java.util.zip.GZIPInputStream; - /* * DSI utilities * @@ -30,6 +18,18 @@ import java.util.zip.GZIPInputStream; * */ +package it.unimi.dsi.io; + +import java.io.Closeable; +import java.io.FileInputStream; +import java.io.FileReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.AbstractCollection; +import java.util.Iterator; +import java.util.NoSuchElementException; +import java.util.zip.GZIPInputStream; + import it.unimi.dsi.fastutil.objects.ObjectArrayList; import it.unimi.dsi.fastutil.objects.ObjectList; import it.unimi.dsi.lang.MutableString; diff --git a/src/it/unimi/dsi/io/InputBitStream.java b/src/it/unimi/dsi/io/InputBitStream.java index 4c5e89d..b76b19a 100644 --- a/src/it/unimi/dsi/io/InputBitStream.java +++ b/src/it/unimi/dsi/io/InputBitStream.java @@ -1,17 +1,3 @@ -package it.unimi.dsi.io; - -import java.io.Closeable; -import java.io.DataInputStream; -import java.io.EOFException; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.Flushable; -import java.io.IOException; -import java.io.InputStream; -import java.lang.reflect.InvocationTargetException; -import java.nio.channels.FileChannel; - /* * DSI utilities * @@ -32,6 +18,20 @@ import java.nio.channels.FileChannel; * */ +package it.unimi.dsi.io; + +import java.io.Closeable; +import java.io.DataInputStream; +import java.io.EOFException; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.Flushable; +import java.io.IOException; +import java.io.InputStream; +import java.lang.reflect.InvocationTargetException; +import java.nio.channels.FileChannel; + import it.unimi.dsi.bits.Fast; import it.unimi.dsi.fastutil.booleans.BooleanIterator; import it.unimi.dsi.fastutil.ints.IntIterators; @@ -127,15 +127,21 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { final String resouceFullPath = "/it/unimi/dsi/io/" + resource; final InputStream ris = InputBitStream.class.getResourceAsStream(resouceFullPath); if (ris == null) throw new IOException("Cannot open resource " + resouceFullPath); - DataInputStream dis = new DataInputStream(new FastBufferedInputStream(ris)); + final DataInputStream dis = new DataInputStream(new FastBufferedInputStream(ris)); BinIO.loadInts(dis, array, 0, array.length); dis.close(); assert checkLength(resource, array, resouceFullPath); } public static boolean checkLength(final String resource, final int[] array, final String resouceFullPath) { - final int actualLength = IntIterators.unwrap(BinIO.asIntIterator(new DataInputStream(InputBitStream.class.getResourceAsStream(resouceFullPath)))).length; + final DataInputStream dis = new DataInputStream(InputBitStream.class.getResourceAsStream(resouceFullPath)); + final int actualLength = IntIterators.unwrap(BinIO.asIntIterator(dis)).length; assert array.length == actualLength : resource + " is long " + actualLength + " but we think it should rather be " + array.length; + try { + dis.close(); + } catch (final IOException e) { + throw new RuntimeException(e); + } return true; } @@ -148,7 +154,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { fillArrayFromResource("zeta3.in.16", ZETA_3); fillArrayFromResource("shiftedgamma.in.16", SHIFTED_GAMMA); } - catch (IOException e) { + catch (final IOException e) { throw new RuntimeException(e); } } @@ -245,11 +251,11 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { try { fc = (FileChannel)(is.getClass().getMethod("getChannel")).invoke(is); } - catch(IllegalAccessException e) {} - catch(IllegalArgumentException e) {} - catch(NoSuchMethodException e) {} - catch(InvocationTargetException e) {} - catch(ClassCastException e) {} + catch(final IllegalAccessException e) {} + catch(final IllegalArgumentException e) {} + catch(final NoSuchMethodException e) {} + catch(final InvocationTargetException e) {} + catch(final ClassCastException e) {} fileChannel = fc; repositionableStream = null; } @@ -468,7 +474,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { current = (current << 8) | read(); fill += 8; } - catch(EOFException dontCare) {} + catch(final EOFException dontCare) {} return fill; } @@ -979,7 +985,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { * @param n the number of γ-coded natural numbers to be skipped. * @see #readGamma() */ - public void skipGammas(int n) throws IOException { + public void skipGammas(final int n) throws IOException { skipGammas((long)n); } @@ -1083,7 +1089,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { * @see #readShiftedGamma() */ - public void skipShiftedGammas(int n) throws IOException { + public void skipShiftedGammas(final int n) throws IOException { skipShiftedGammas((long)n); } @@ -1190,7 +1196,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { * @see #readDelta() */ - public void skipDeltas(int n) throws IOException { + public void skipDeltas(final int n) throws IOException { skipDeltas((long)n); } @@ -1503,7 +1509,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { * @see #readZeta(int) */ - public void skipZetas(final int k, int n) throws IOException { + public void skipZetas(final int k, final int n) throws IOException { skipZetas(k, (long)n); } @@ -1587,7 +1593,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { try { return readBit() != 0; } - catch (IOException e) { + catch (final IOException e) { throw new RuntimeException(e); } } @@ -1606,7 +1612,7 @@ public class InputBitStream implements BooleanIterator, Flushable, Closeable { try { return (int)skip((long)n); } - catch (IOException e) { + catch (final IOException e) { throw new RuntimeException(e); } } diff --git a/src/it/unimi/dsi/io/LineIterator.java b/src/it/unimi/dsi/io/LineIterator.java index 97c3349..2163c79 100644 --- a/src/it/unimi/dsi/io/LineIterator.java +++ b/src/it/unimi/dsi/io/LineIterator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,16 +18,18 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.objects.ObjectIterator; -import it.unimi.dsi.fastutil.objects.ObjectArrayList; -import it.unimi.dsi.lang.MutableString; -import it.unimi.dsi.logging.ProgressLogger; +package it.unimi.dsi.io; import java.io.Closeable; import java.io.IOException; import java.util.List; import java.util.NoSuchElementException; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import it.unimi.dsi.lang.MutableString; +import it.unimi.dsi.logging.ProgressLogger; + /** An adapter that exposes a fast buffered reader as an iterator * over the returned lines. Since we just actually read a line to know * whether {@link #hasNext()} should return true, the last line read @@ -85,7 +85,7 @@ public class LineIterator implements ObjectIterator<MutableString> { try { k = 1 - k; hasNext = fastBufferedReader.readLine(s[k]) != null; - } catch (IOException e) { + } catch (final IOException e) { throw new RuntimeException(e); } toAdvance = false; diff --git a/src/it/unimi/dsi/io/LineWordReader.java b/src/it/unimi/dsi/io/LineWordReader.java index 9749842..f0f9e80 100644 --- a/src/it/unimi/dsi/io/LineWordReader.java +++ b/src/it/unimi/dsi/io/LineWordReader.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,12 +18,14 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.io; import java.io.IOException; import java.io.Reader; import java.io.Serializable; +import it.unimi.dsi.lang.MutableString; + /** A trivial {@link it.unimi.dsi.io.WordReader} that considers each line * of a document a single word. * @@ -40,7 +40,7 @@ import java.io.Serializable; public class LineWordReader implements WordReader, Serializable { private static final long serialVersionUID = 1L; /** An fast buffered reader wrapping the underlying reader. */ - private FastBufferedReader fastBufferedReader = new FastBufferedReader(); + private final FastBufferedReader fastBufferedReader = new FastBufferedReader(); @Override public boolean next(final MutableString word, final MutableString nonWord) throws IOException { diff --git a/src/it/unimi/dsi/io/MultipleInputStream.java b/src/it/unimi/dsi/io/MultipleInputStream.java index 1fd4298..bf02251 100644 --- a/src/it/unimi/dsi/io/MultipleInputStream.java +++ b/src/it/unimi/dsi/io/MultipleInputStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.objects.ObjectArrays; +package it.unimi.dsi.io; import java.io.IOException; import java.io.InputStream; +import it.unimi.dsi.fastutil.objects.ObjectArrays; + /** A multiple input stream. * * <p>Instances of this class encapsulate a sequence of input streams. diff --git a/src/it/unimi/dsi/io/NullInputStream.java b/src/it/unimi/dsi/io/NullInputStream.java index af14347..9d482e3 100644 --- a/src/it/unimi/dsi/io/NullInputStream.java +++ b/src/it/unimi/dsi/io/NullInputStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,12 +18,14 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.io.MeasurableInputStream; -import it.unimi.dsi.fastutil.io.RepositionableStream; +package it.unimi.dsi.io; import java.io.IOException; import java.io.Serializable; +import it.unimi.dsi.fastutil.io.MeasurableInputStream; +import it.unimi.dsi.fastutil.io.RepositionableStream; + /** End-of-stream-only input stream. * * <P>This stream has length 0, and will always return end-of-file on any read attempt. @@ -69,7 +69,7 @@ public class NullInputStream extends MeasurableInputStream implements Reposition } @Override - public void position(long position) throws IOException { + public void position(final long position) throws IOException { // TODO: we should specify the semantics out of bounds return; } diff --git a/src/it/unimi/dsi/io/NullOutputStream.java b/src/it/unimi/dsi/io/NullOutputStream.java index ecf2173..ba7988b 100644 --- a/src/it/unimi/dsi/io/NullOutputStream.java +++ b/src/it/unimi/dsi/io/NullOutputStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,11 +18,13 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.io.RepositionableStream; +package it.unimi.dsi.io; import java.io.IOException; import java.io.OutputStream; +import it.unimi.dsi.fastutil.io.RepositionableStream; + /** Throw-it-away output stream. * * <P>This stream discards whatever is written into it. Its usefulness is in @@ -59,5 +59,5 @@ public class NullOutputStream extends OutputStream implements RepositionableStre } @Override - public void position(long newPosition) throws IOException {} + public void position(final long newPosition) throws IOException {} } diff --git a/src/it/unimi/dsi/io/NullReader.java b/src/it/unimi/dsi/io/NullReader.java index fe99ca4..0aa91fc 100644 --- a/src/it/unimi/dsi/io/NullReader.java +++ b/src/it/unimi/dsi/io/NullReader.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import java.io.Reader; import java.io.Serializable; diff --git a/src/it/unimi/dsi/io/OfflineIterable.java b/src/it/unimi/dsi/io/OfflineIterable.java index f48f319..73c9a6c 100644 --- a/src/it/unimi/dsi/io/OfflineIterable.java +++ b/src/it/unimi/dsi/io/OfflineIterable.java @@ -1,18 +1,3 @@ -package it.unimi.dsi.io; - - -import java.io.DataInput; -import java.io.DataInputStream; -import java.io.DataOutput; -import java.io.DataOutputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.NoSuchElementException; - -import org.slf4j.LoggerFactory; - /* * DSI utilities * @@ -33,6 +18,20 @@ import org.slf4j.LoggerFactory; * */ +package it.unimi.dsi.io; + +import java.io.DataInput; +import java.io.DataInputStream; +import java.io.DataOutput; +import java.io.DataOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.NoSuchElementException; + +import org.slf4j.LoggerFactory; + import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.io.FastBufferedInputStream; import it.unimi.dsi.fastutil.io.FastBufferedOutputStream; diff --git a/src/it/unimi/dsi/io/OutputBitStream.java b/src/it/unimi/dsi/io/OutputBitStream.java index 17319eb..fcd1cdd 100644 --- a/src/it/unimi/dsi/io/OutputBitStream.java +++ b/src/it/unimi/dsi/io/OutputBitStream.java @@ -1,16 +1,3 @@ -package it.unimi.dsi.io; - -import java.io.Closeable; -import java.io.EOFException; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.Flushable; -import java.io.IOException; -import java.io.OutputStream; -import java.lang.reflect.InvocationTargetException; -import java.nio.channels.FileChannel; - /* * DSI utilities * @@ -31,6 +18,19 @@ import java.nio.channels.FileChannel; * */ +package it.unimi.dsi.io; + +import java.io.Closeable; +import java.io.EOFException; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.Flushable; +import java.io.IOException; +import java.io.OutputStream; +import java.lang.reflect.InvocationTargetException; +import java.nio.channels.FileChannel; + import it.unimi.dsi.bits.Fast; import it.unimi.dsi.fastutil.booleans.BooleanIterator; import it.unimi.dsi.fastutil.io.RepositionableStream; diff --git a/src/it/unimi/dsi/io/SafelyCloseable.java b/src/it/unimi/dsi/io/SafelyCloseable.java index 54eb3ce..4f1b262 100644 --- a/src/it/unimi/dsi/io/SafelyCloseable.java +++ b/src/it/unimi/dsi/io/SafelyCloseable.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -19,6 +17,9 @@ package it.unimi.dsi.io; * along with this program; if not, see <http://www.gnu.org/licenses/>. * */ + +package it.unimi.dsi.io; + import java.io.Closeable; /** A marker interface for a closeable resource that implements safety measures to diff --git a/src/it/unimi/dsi/io/SegmentedInputStream.java b/src/it/unimi/dsi/io/SegmentedInputStream.java index 0859b31..b0cc7dc 100644 --- a/src/it/unimi/dsi/io/SegmentedInputStream.java +++ b/src/it/unimi/dsi/io/SegmentedInputStream.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,9 +18,7 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.fastutil.bytes.ByteArrays; -import it.unimi.dsi.fastutil.io.MeasurableInputStream; -import it.unimi.dsi.fastutil.objects.ObjectArrayList; +package it.unimi.dsi.io; import java.io.IOException; import java.io.InputStream; @@ -32,6 +28,10 @@ import java.util.NoSuchElementException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import it.unimi.dsi.fastutil.bytes.ByteArrays; +import it.unimi.dsi.fastutil.io.MeasurableInputStream; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; + /** Exhibits a single {@link InputStream} as a number of streams divided into {@link java.io.InputStream#reset() reset()}-separated * segments. * @@ -55,13 +55,13 @@ public class SegmentedInputStream extends MeasurableInputStream { private static final Logger LOGGER = LoggerFactory.getLogger(SegmentedInputStream.class); /** Underlying input stream. */ - private InputStream in; + private final InputStream in; /** Relative position within the current segment. */ private int relativePos; /** Byte length of the current segment. */ private int segmentLen; /** List of known blocks. */ - private ObjectArrayList<SegmentBlock> blocks; + private final ObjectArrayList<SegmentBlock> blocks; /** The start marker of the current segment. */ private long currentStartMarker; /** The stop marker of the current segment. */ @@ -83,7 +83,7 @@ public class SegmentedInputStream extends MeasurableInputStream { * @param delimiter a list of segment delimiters. * @throws IllegalArgumentException if the elements of <code>delimiter</code> are negative or not increasing. */ - public SegmentBlock(long... delimiter) throws IllegalArgumentException { + public SegmentBlock(final long... delimiter) throws IllegalArgumentException { if (delimiter.length == 0) throw new IllegalArgumentException(); for (int i = 0; i < delimiter.length - 1; i++) @@ -170,13 +170,13 @@ public class SegmentedInputStream extends MeasurableInputStream { if (! block.hasMoreSegments()) return; block.nextSegment(); - long absPos = currentStartMarker + relativePos; + final long absPos = currentStartMarker + relativePos; currentStartMarker = block.currentStartMarker(); currentStopMarker = block.currentStopMarker(); if (currentStartMarker - absPos > 0) { - long diff = in.skip(currentStartMarker - absPos); + final long diff = in.skip(currentStartMarker - absPos); if (diff != currentStartMarker - absPos) throw new IllegalStateException("Should have skipped " + (currentStartMarker - absPos) + " bytes, got " + diff); } diff --git a/src/it/unimi/dsi/io/WordReader.java b/src/it/unimi/dsi/io/WordReader.java index f4d4af1..180d819 100644 --- a/src/it/unimi/dsi/io/WordReader.java +++ b/src/it/unimi/dsi/io/WordReader.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,12 +18,14 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.io; import java.io.IOException; import java.io.Reader; import java.io.Serializable; +import it.unimi.dsi.lang.MutableString; + /** An interface providing methods to break the input from a reader into words. * * <p>The intended implementations of this interface should decorate diff --git a/src/it/unimi/dsi/lang/EnumStringParser.java b/src/it/unimi/dsi/lang/EnumStringParser.java index ef0ea44..13da1a0 100644 --- a/src/it/unimi/dsi/lang/EnumStringParser.java +++ b/src/it/unimi/dsi/lang/EnumStringParser.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import com.martiansoftware.jsap.ParseException; import com.martiansoftware.jsap.StringParser; @@ -52,15 +52,15 @@ public class EnumStringParser<E extends Enum<E>> extends StringParser { */ @Override @SuppressWarnings({ "unchecked" }) - public E parse(String s) throws ParseException { + public E parse(final String s) throws ParseException { try { return (E) enumClass.getMethod("valueOf", String.class).invoke(null, toUpper ? s.toUpperCase() : s); - } catch (Exception e) { + } catch (final Exception e) { throw (new ParseException("Unknown value '" + s + "'.", e)); } } - private EnumStringParser(Class<E> enumClass, final boolean toUpper) { + private EnumStringParser(final Class<E> enumClass, final boolean toUpper) { this.enumClass = enumClass; this.toUpper = toUpper; } diff --git a/src/it/unimi/dsi/lang/FlyweightPrototype.java b/src/it/unimi/dsi/lang/FlyweightPrototype.java index 3b99332..72359ea 100644 --- a/src/it/unimi/dsi/lang/FlyweightPrototype.java +++ b/src/it/unimi/dsi/lang/FlyweightPrototype.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + /** A prototype providing flyweight copies. * * <p><em>Flyweight copies</em> are useful to implement multithreading on read-only diff --git a/src/it/unimi/dsi/lang/FlyweightPrototypes.java b/src/it/unimi/dsi/lang/FlyweightPrototypes.java index bdedf66..a0e57db 100644 --- a/src/it/unimi/dsi/lang/FlyweightPrototypes.java +++ b/src/it/unimi/dsi/lang/FlyweightPrototypes.java @@ -1,7 +1,3 @@ -package it.unimi.dsi.lang; - -import java.lang.reflect.Array; - /* * DSI utilities * @@ -22,6 +18,10 @@ import java.lang.reflect.Array; * */ +package it.unimi.dsi.lang; + +import java.lang.reflect.Array; + /** A class providing static methods and objects that do useful things * with {@linkplain it.unimi.dsi.lang.FlyweightPrototype flyweight protoypes}. */ diff --git a/src/it/unimi/dsi/lang/MutableString.java b/src/it/unimi/dsi/lang/MutableString.java index c4b399c..dc531f6 100644 --- a/src/it/unimi/dsi/lang/MutableString.java +++ b/src/it/unimi/dsi/lang/MutableString.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import java.io.DataInput; import java.io.DataOutput; import java.io.EOFException; diff --git a/src/it/unimi/dsi/lang/ObjectParser.java b/src/it/unimi/dsi/lang/ObjectParser.java index b4ba4d3..e4f2ab1 100644 --- a/src/it/unimi/dsi/lang/ObjectParser.java +++ b/src/it/unimi/dsi/lang/ObjectParser.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import java.io.IOException; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; diff --git a/src/it/unimi/dsi/logging/ProgressLogger.java b/src/it/unimi/dsi/logging/ProgressLogger.java index 9f3187a..3e732a2 100644 --- a/src/it/unimi/dsi/logging/ProgressLogger.java +++ b/src/it/unimi/dsi/logging/ProgressLogger.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.logging; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.logging; * */ +package it.unimi.dsi.logging; + import static it.unimi.dsi.Util.RUNTIME; import java.util.concurrent.TimeUnit; diff --git a/src/it/unimi/dsi/parser/Attribute.java b/src/it/unimi/dsi/parser/Attribute.java index 382fcd1..f0c6f49 100644 --- a/src/it/unimi/dsi/parser/Attribute.java +++ b/src/it/unimi/dsi/parser/Attribute.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import it.unimi.dsi.lang.MutableString; /** An SGML attribute. */ diff --git a/src/it/unimi/dsi/parser/BulletParser.java b/src/it/unimi/dsi/parser/BulletParser.java index c3aa858..770ce7c 100644 --- a/src/it/unimi/dsi/parser/BulletParser.java +++ b/src/it/unimi/dsi/parser/BulletParser.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; import it.unimi.dsi.fastutil.objects.Reference2ObjectArrayMap; import it.unimi.dsi.fastutil.objects.Reference2ObjectMap; diff --git a/src/it/unimi/dsi/parser/Element.java b/src/it/unimi/dsi/parser/Element.java index efc696c..45c1637 100644 --- a/src/it/unimi/dsi/parser/Element.java +++ b/src/it/unimi/dsi/parser/Element.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -19,6 +17,9 @@ package it.unimi.dsi.parser; * along with this program; if not, see <http://www.gnu.org/licenses/>. * */ + +package it.unimi.dsi.parser; + import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.objects.ReferenceLinkedOpenHashSet; import it.unimi.dsi.lang.MutableString; diff --git a/src/it/unimi/dsi/parser/Entity.java b/src/it/unimi/dsi/parser/Entity.java index 09587b1..62b254f 100644 --- a/src/it/unimi/dsi/parser/Entity.java +++ b/src/it/unimi/dsi/parser/Entity.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import it.unimi.dsi.lang.MutableString; /** An SGML character entity. */ diff --git a/src/it/unimi/dsi/parser/HTMLFactory.java b/src/it/unimi/dsi/parser/HTMLFactory.java index 3a362be..45d63fa 100644 --- a/src/it/unimi/dsi/parser/HTMLFactory.java +++ b/src/it/unimi/dsi/parser/HTMLFactory.java @@ -1,6 +1,3 @@ -package it.unimi.dsi.parser; - - /* * DSI utilities * @@ -21,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; import it.unimi.dsi.lang.MutableString; diff --git a/src/it/unimi/dsi/parser/ParsingFactory.java b/src/it/unimi/dsi/parser/ParsingFactory.java index a739fa1..990c478 100644 --- a/src/it/unimi/dsi/parser/ParsingFactory.java +++ b/src/it/unimi/dsi/parser/ParsingFactory.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import it.unimi.dsi.lang.MutableString; /** A set of coherent methods to turn element-type, attribute and entity names to unique interned instances. diff --git a/src/it/unimi/dsi/parser/WellFormedXmlFactory.java b/src/it/unimi/dsi/parser/WellFormedXmlFactory.java index c7b3750..1e7715a 100644 --- a/src/it/unimi/dsi/parser/WellFormedXmlFactory.java +++ b/src/it/unimi/dsi/parser/WellFormedXmlFactory.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; import it.unimi.dsi.lang.MutableString; diff --git a/src/it/unimi/dsi/parser/callback/Callback.java b/src/it/unimi/dsi/parser/callback/Callback.java index 0bdbd6b..32a2bd9 100644 --- a/src/it/unimi/dsi/parser/callback/Callback.java +++ b/src/it/unimi/dsi/parser/callback/Callback.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; + import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Map; - /** A callback for the {@linkplain it.unimi.dsi.parser.BulletParser bullet parser}. * * <P>This interface is very loosely inspired to the SAX2 interface. However, it diff --git a/src/it/unimi/dsi/parser/callback/ComposedCallbackBuilder.java b/src/it/unimi/dsi/parser/callback/ComposedCallbackBuilder.java index 3d132bf..ca1fa12 100644 --- a/src/it/unimi/dsi/parser/callback/ComposedCallbackBuilder.java +++ b/src/it/unimi/dsi/parser/callback/ComposedCallbackBuilder.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,14 +18,16 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; + import it.unimi.dsi.fastutil.objects.ObjectArrayList; import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Map; - /** A builder for composed callbacks. * * <P>To compose a series of callbacks, you must first create an instance @@ -45,10 +45,10 @@ public class ComposedCallbackBuilder { final int size; /** The callback array. */ - private Callback[] callback; + private final Callback[] callback; /** An array of boolean representing continuation of the corresponding callback in {@link #callback}. */ - private boolean[] cont; + private final boolean[] cont; private final ObjectArrayList<Callback> callbacks; diff --git a/src/it/unimi/dsi/parser/callback/DebugCallbackDecorator.java b/src/it/unimi/dsi/parser/callback/DebugCallbackDecorator.java index 5553f0f..222d1a3 100644 --- a/src/it/unimi/dsi/parser/callback/DebugCallbackDecorator.java +++ b/src/it/unimi/dsi/parser/callback/DebugCallbackDecorator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; + import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Map; - /** A decorator that prints on standard error all calls to the underlying callback. */ public class DebugCallbackDecorator implements Callback { diff --git a/src/it/unimi/dsi/parser/callback/DefaultCallback.java b/src/it/unimi/dsi/parser/callback/DefaultCallback.java index 24e1d67..7693a2d 100644 --- a/src/it/unimi/dsi/parser/callback/DefaultCallback.java +++ b/src/it/unimi/dsi/parser/callback/DefaultCallback.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; + import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Map; - /** * A default, do-nothing-at-all callback. * diff --git a/src/it/unimi/dsi/parser/callback/LinkExtractor.java b/src/it/unimi/dsi/parser/callback/LinkExtractor.java index 6187057..a40cd79 100644 --- a/src/it/unimi/dsi/parser/callback/LinkExtractor.java +++ b/src/it/unimi/dsi/parser/callback/LinkExtractor.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,6 +18,11 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; +import java.util.Set; + import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; @@ -27,9 +30,6 @@ import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; import it.unimi.dsi.util.TextPattern; -import java.util.Map; -import java.util.Set; - /** * A callback extracting links. * diff --git a/src/it/unimi/dsi/parser/callback/TextExtractor.java b/src/it/unimi/dsi/parser/callback/TextExtractor.java index 621b3b3..6daac61 100644 --- a/src/it/unimi/dsi/parser/callback/TextExtractor.java +++ b/src/it/unimi/dsi/parser/callback/TextExtractor.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Map; + import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Map; - /** A callback extracting text and titles. * * <P>This callbacks extracts all text in the page, and the title. diff --git a/src/it/unimi/dsi/stat/Jackknife.java b/src/it/unimi/dsi/stat/Jackknife.java index 3b6e409..83568bc 100644 --- a/src/it/unimi/dsi/stat/Jackknife.java +++ b/src/it/unimi/dsi/stat/Jackknife.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.stat; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.stat; * */ +package it.unimi.dsi.stat; + import java.math.BigDecimal; import java.math.MathContext; import java.math.RoundingMode; @@ -82,7 +82,7 @@ public class Jackknife { @Override public String toString() { - StringBuilder s = new StringBuilder(); + final StringBuilder s = new StringBuilder(); for(int i = estimate.length; i++ != 0;) s.append(estimate[i]).append('\t').append(standardError[i]).append(System.getProperty("\n")); return s.toString(); } @@ -103,12 +103,7 @@ public class Jackknife { } /** A statistic that returns the sample. Useful to compute the average and the empirical standard error. */ - public static Jackknife.Statistic IDENTITY = new Jackknife.Statistic() { - @Override - public BigDecimal[] compute(final BigDecimal[] sample, final MathContext unused) { - return sample; - } - }; + public static Jackknife.Statistic IDENTITY = (sample, unused) -> sample; /** An abstract statistic with a {@linkplain #compute(double[]) template method} that * accepts an array of doubles, returns an array of doubles and handles the data conversions that @@ -118,10 +113,10 @@ public class Jackknife { public abstract double[] compute(final double[] sample); @Override - public BigDecimal[] compute(BigDecimal[] bigSample, final MathContext unused) { + public BigDecimal[] compute(final BigDecimal[] bigSample, final MathContext unused) { return doubleArray2BigDecimalArray(compute(bigDecimalArray2DoubleArray(bigSample))); } - }; + } /** Applies the jackknife to a statistic of interest using a list of samples using {@link #DEFAULT_MATH_CONTEXT} as context. @@ -152,7 +147,7 @@ public class Jackknife { final BigDecimal[] sum = new BigDecimal[l]; for(int p = l; p-- != 0;) sum[p] = BigDecimal.ZERO; // Gather all samples - for(double[] sample: samples) { + for(final double[] sample: samples) { if (sample.length != l) throw new IllegalArgumentException("Samples have different sizes: " + sample.length + " != " + l); for(int p = l; p-- != 0;) sum[p] = sum[p].add(BigDecimal.valueOf(sample[p]), mc); } diff --git a/src/it/unimi/dsi/stat/SummaryStats.java b/src/it/unimi/dsi/stat/SummaryStats.java index 0833943..6c432ed 100644 --- a/src/it/unimi/dsi/stat/SummaryStats.java +++ b/src/it/unimi/dsi/stat/SummaryStats.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.stat; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.stat; * */ +package it.unimi.dsi.stat; + import it.unimi.dsi.Util; import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.doubles.DoubleList; @@ -49,7 +49,7 @@ public class SummaryStats implements Size64 { * * @param x the new value. */ - public synchronized void add(double x) { + public synchronized void add(final double x) { final double oldA = a; a += (x - a) / ++size; q += (x - a) * (x - oldA); @@ -61,8 +61,8 @@ public class SummaryStats implements Size64 { * * @param a an array of new values. */ - public void addAll(double[] a) { - for(double x: a) add(x); + public void addAll(final double[] a) { + for(final double x: a) add(x); } /** Adds values to the stream. @@ -70,7 +70,7 @@ public class SummaryStats implements Size64 { * @param l a list of new values. */ public void addAll(final DoubleList l) { - for(double x: l) add(x); + for(final double x: l) add(x); } /** Returns the mean of the values added so far. diff --git a/src/it/unimi/dsi/util/AbstractPrefixMap.java b/src/it/unimi/dsi/util/AbstractPrefixMap.java index 3f77792..3a53229 100644 --- a/src/it/unimi/dsi/util/AbstractPrefixMap.java +++ b/src/it/unimi/dsi/util/AbstractPrefixMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,10 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + +import java.io.Serializable; + import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; import it.unimi.dsi.fastutil.objects.AbstractObject2ObjectFunction; import it.unimi.dsi.fastutil.objects.AbstractObjectList; @@ -27,8 +29,6 @@ import it.unimi.dsi.fastutil.objects.Object2ObjectFunction; import it.unimi.dsi.fastutil.objects.ObjectList; import it.unimi.dsi.lang.MutableString; -import java.io.Serializable; - /** An abstract implementation of a prefix map. * * <p>This class provides the full serives of a {@link PrefixMap} by implementing just @@ -105,7 +105,7 @@ public abstract class AbstractPrefixMap extends AbstractObject2LongFunction<Char @Override public boolean containsKey(final Object o) { - Interval interval = (Interval)o; + final Interval interval = (Interval)o; return interval != Intervals.EMPTY_INTERVAL && interval.left >= 0 && interval.right < AbstractPrefixMap.this.size(); } @@ -126,7 +126,7 @@ public abstract class AbstractPrefixMap extends AbstractObject2LongFunction<Char return AbstractPrefixMap.this.size(); } @Override - public MutableString get(int index) { + public MutableString get(final int index) { return getTerm(index, new MutableString()); } }; diff --git a/src/it/unimi/dsi/util/BloomFilter.java b/src/it/unimi/dsi/util/BloomFilter.java index 3513f13..75bf9fb 100644 --- a/src/it/unimi/dsi/util/BloomFilter.java +++ b/src/it/unimi/dsi/util/BloomFilter.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,12 +18,7 @@ package it.unimi.dsi.util; * */ -import it.unimi.dsi.bits.Fast; -import it.unimi.dsi.fastutil.Size64; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.lang.MutableString; -import it.unimi.dsi.logging.ProgressLogger; +package it.unimi.dsi.util; import java.io.IOException; import java.io.InputStreamReader; @@ -48,6 +41,13 @@ import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; import com.martiansoftware.jsap.stringparsers.IntSizeStringParser; +import it.unimi.dsi.bits.Fast; +import it.unimi.dsi.fastutil.Size64; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.lang.MutableString; +import it.unimi.dsi.logging.ProgressLogger; + /** A Bloom filter. * * <P>Instances of this class represent a set of elements (with false positives) using a Bloom @@ -475,19 +475,19 @@ public class BloomFilter<T> implements Serializable, Size64 { new UnflaggedOption("precision", JSAP.INTEGER_PARSER, JSAP.NO_DEFAULT, JSAP.REQUIRED, JSAP.NOT_GREEDY, "The precision of the filter.") }); - JSAPResult jsapResult = jsap.parse(arg); + final JSAPResult jsapResult = jsap.parse(arg); if (jsap.messagePrinted()) return; final int bufferSize = jsapResult.getInt("bufferSize"); final String filterName = jsapResult.getString("bloomFilter"); final Charset encoding = (Charset)jsapResult.getObject("encoding"); - BloomFilter<Void> filter = BloomFilter.create(jsapResult.getInt("size"), jsapResult.getInt("precision")); + final BloomFilter<Void> filter = BloomFilter.create(jsapResult.getInt("size"), jsapResult.getInt("precision")); final ProgressLogger pl = new ProgressLogger(); pl.itemsName = "terms"; pl.start("Reading terms..."); - MutableString s = new MutableString(); - FastBufferedReader reader = new FastBufferedReader(new InputStreamReader(System.in, encoding), bufferSize); + final MutableString s = new MutableString(); + final FastBufferedReader reader = new FastBufferedReader(new InputStreamReader(System.in, encoding), bufferSize); while(reader.readLine(s) != null) { filter.add(s); pl.lightUpdate(); diff --git a/src/it/unimi/dsi/util/ByteBufferLongBigList.java b/src/it/unimi/dsi/util/ByteBufferLongBigList.java index b34f925..3d2f3bf 100644 --- a/src/it/unimi/dsi/util/ByteBufferLongBigList.java +++ b/src/it/unimi/dsi/util/ByteBufferLongBigList.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.DataOutput; import java.io.IOException; import java.nio.ByteBuffer; diff --git a/src/it/unimi/dsi/util/CircularCharArrayBuffer.java b/src/it/unimi/dsi/util/CircularCharArrayBuffer.java index 2d2967f..3e99a00 100644 --- a/src/it/unimi/dsi/util/CircularCharArrayBuffer.java +++ b/src/it/unimi/dsi/util/CircularCharArrayBuffer.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.util.Arrays; /** A circular char buffer that can be used to implement a sliding @@ -46,7 +46,7 @@ public class CircularCharArrayBuffer { * * @param maxChar the buffer size. */ - public CircularCharArrayBuffer(int maxChar) { + public CircularCharArrayBuffer(final int maxChar) { buffer = new char[maxChar]; if (DEBUG) Arrays.fill(buffer, ' '); } @@ -58,7 +58,7 @@ public class CircularCharArrayBuffer { * @param offset the starting point. * @param length the (maximum) number of characters to be copied. */ - public void add(char[] b, int offset, int length) { + public void add(final char[] b, int offset, final int length) { if (buffer.length == 0) return; int toBeCopied = length; if (DEBUG) System.out.println("Called add(" + new String(b, offset, toBeCopied) + ")"); @@ -67,7 +67,7 @@ public class CircularCharArrayBuffer { toBeCopied = buffer.length; } // Now length contains the number of bytes to be _really_ copied - int toEnd = Math.min(toBeCopied, buffer.length - (start + len) % buffer.length); + final int toEnd = Math.min(toBeCopied, buffer.length - (start + len) % buffer.length); // toEnd is the number of bytes that are free from the first free position to the end of the buffer System.arraycopy(b, offset, buffer, (start + len) % buffer.length, toEnd); if (toBeCopied > toEnd) { @@ -88,10 +88,10 @@ public class CircularCharArrayBuffer { * @param offset the starting index where copy should start from. * @param length the maximum number of characters to be copied. */ - public void toCharArray(char[] b, int offset, int length) { + public void toCharArray(final char[] b, final int offset, final int length) { if (buffer.length == 0) return; - int t = Math.min(length, len); - int toEnd = Math.min(t, buffer.length - start); + final int t = Math.min(length, len); + final int toEnd = Math.min(t, buffer.length - start); System.arraycopy(buffer, start, b, offset, toEnd); if (toEnd < t) System.arraycopy(buffer, 0, b, offset + toEnd, t - toEnd); } @@ -100,7 +100,7 @@ public class CircularCharArrayBuffer { * * @param b the buffer where the content is to be copied. */ - public void toCharArray(char[] b) { + public void toCharArray(final char[] b) { toCharArray(b, 0, b.length); } @@ -109,7 +109,7 @@ public class CircularCharArrayBuffer { * @return a copy of the buffer content. */ public char[] toCharArray() { - char[] b = new char[size()]; + final char[] b = new char[size()]; toCharArray(b); return b; } diff --git a/src/it/unimi/dsi/util/FrontCodedStringList.java b/src/it/unimi/dsi/util/FrontCodedStringList.java index 5982889..6a71a13 100644 --- a/src/it/unimi/dsi/util/FrontCodedStringList.java +++ b/src/it/unimi/dsi/util/FrontCodedStringList.java @@ -1,3 +1,23 @@ +/* + * DSI utilities + * + * Copyright (C) 2002-2020 Sebastiano Vigna + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + * + */ + package it.unimi.dsi.util; import java.io.IOException; @@ -24,26 +44,6 @@ import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; import com.martiansoftware.jsap.stringparsers.IntSizeStringParser; -/* - * DSI utilities - * - * Copyright (C) 2002-2020 Sebastiano Vigna - * - * This library is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 3 of the License, or (at your option) - * any later version. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License - * for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, see <http://www.gnu.org/licenses/>. - * - */ - import it.unimi.dsi.fastutil.bytes.ByteArrayFrontCodedList; import it.unimi.dsi.fastutil.chars.CharArrayFrontCodedList; import it.unimi.dsi.fastutil.io.BinIO; diff --git a/src/it/unimi/dsi/util/HyperLogLogCounterArray.java b/src/it/unimi/dsi/util/HyperLogLogCounterArray.java index 21cf099..203a72d 100644 --- a/src/it/unimi/dsi/util/HyperLogLogCounterArray.java +++ b/src/it/unimi/dsi/util/HyperLogLogCounterArray.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,14 +18,16 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + +import java.io.Serializable; +import java.util.Arrays; + import it.unimi.dsi.Util; import it.unimi.dsi.bits.Fast; import it.unimi.dsi.bits.LongArrayBitVector; import it.unimi.dsi.fastutil.longs.LongBigList; -import java.io.Serializable; -import java.util.Arrays; - /** * An array of approximate sets each represented using a HyperLogLog counter. * @@ -95,7 +95,7 @@ public class HyperLogLogCounterArray implements Serializable { /** A seed for hashing. */ protected long seed; /** The mask OR'd with the output of the hash function so that {@link Long#numberOfTrailingZeros(long)} does not return too large a value. */ - private long sentinelMask; + private final long sentinelMask; /** Whether counters are aligned to longwords. */ protected final boolean longwordAligned; /** A mask for the residual bits of a counter (the {@link #counterSize} <code>%</code> {@link Long#SIZE} lowest bits). */ @@ -254,7 +254,7 @@ public class HyperLogLogCounterArray implements Serializable { /** Clears all registers. */ public void clear() { - for(long[] a: bits) Arrays.fill(a, 0); + for(final long[] a: bits) Arrays.fill(a, 0); } private final static long jenkins(final long x, final long seed) { @@ -521,8 +521,8 @@ public class HyperLogLogCounterArray implements Serializable { } if (ASSERTS) { - LongArrayBitVector aa = LongArrayBitVector.wrap(source); - LongArrayBitVector bb = LongArrayBitVector.wrap(dest); + final LongArrayBitVector aa = LongArrayBitVector.wrap(source); + final LongArrayBitVector bb = LongArrayBitVector.wrap(dest); for(int i = 0; i < counterSize; i++) assert aa.getBoolean(offset + i) == bb.getBoolean(offset + i); } } @@ -598,7 +598,7 @@ public class HyperLogLogCounterArray implements Serializable { final LongBigList a = LongArrayBitVector.wrap(x).asLongBigList(registerSize); final LongBigList b = LongArrayBitVector.wrap(y).asLongBigList(registerSize); for(int i = 0; i < m; i++) { - long pos = (i + 1) * (long)registerSize - 1; + final long pos = (i + 1) * (long)registerSize - 1; assert (b.getLong(i) < a.getLong(i)) == ((accumulator[(int)(pos / Long.SIZE)] & 1L << pos % Long.SIZE) != 0); } } @@ -616,8 +616,8 @@ public class HyperLogLogCounterArray implements Serializable { if (ASSERTS) { final long[] t = x.clone(); - LongBigList a = LongArrayBitVector.wrap(t).asLongBigList(registerSize); - LongBigList b = LongArrayBitVector.wrap(y).asLongBigList(registerSize); + final LongBigList a = LongArrayBitVector.wrap(t).asLongBigList(registerSize); + final LongBigList b = LongArrayBitVector.wrap(y).asLongBigList(registerSize); for(int i = 0; i < Long.SIZE * l / registerSize; i++) a.set(i, Math.max(a.getLong(i), b.getLong(i))); // Note: this must be kept in sync with the line computing the result. for(int i = l; i-- != 0;) assert t[i] == (~mask[i] & x[i] | mask[i] & y[i]); diff --git a/src/it/unimi/dsi/util/ImmutableBinaryTrie.java b/src/it/unimi/dsi/util/ImmutableBinaryTrie.java index 08e7f18..56de0ff 100644 --- a/src/it/unimi/dsi/util/ImmutableBinaryTrie.java +++ b/src/it/unimi/dsi/util/ImmutableBinaryTrie.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,12 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.ListIterator; + import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.bits.LongArrayBitVector; import it.unimi.dsi.bits.TransformationStrategy; @@ -29,10 +33,6 @@ import it.unimi.dsi.fastutil.objects.ObjectArrayList; import it.unimi.dsi.fastutil.objects.ObjectList; import it.unimi.dsi.lang.MutableString; -import java.io.Serializable; -import java.util.Iterator; -import java.util.ListIterator; - /** An immutable implementation of binary tries. * @@ -165,14 +165,15 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple if (elements.size() == 0) return null; - BitVector first = elements.get(0), curr; + final BitVector first = elements.get(0); + BitVector curr; int prefix = (int) first.length(), change = -1, j; // We rule out the case of a single word (it would work anyway, but it's faster) if (elements.size() == 1) return new Node(pos < prefix ? LongArrayBitVector.copy(first.subVector(pos, prefix)) : null, size++); // Find maximum common prefix. change records the point of change (for splitting the word set). - for(ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { + for(final ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { curr = i.next(); if (curr.length() < prefix) prefix = (int) curr.length(); @@ -189,7 +190,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple // and explicitly search for the actual change point, which is the first // word with prefix-th bit true. change = 1; - for(ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { + for(final ListIterator<LongArrayBitVector> i = elements.listIterator(1); i.hasNext();) { curr = i.next(); if (curr.getBoolean(prefix)) break; change++; @@ -231,7 +232,8 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple path = n.path; if (path != null) { - int minLength = Math.min(length - pos, n.pathLength), i; + final int minLength = Math.min(length - pos, n.pathLength); + int i; for(i = 0; i < minLength; i++) if (word.getBoolean(pos + i) != get(path, i)) break; // Incompatible with current path. if (i < minLength) return -1; @@ -318,7 +320,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple path = n.path; if (path != null) { - int maxLength = Math.min(length - pos, n.pathLength); + final int maxLength = Math.min(length - pos, n.pathLength); int i; for(i = 0; i < maxLength; i++) if (word.getBoolean(pos + i) != get(path, i)) break; // Incompatible with current path--we return the empty interval. @@ -436,7 +438,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple } if (path != null) { - int maxLength = Math.min(length - pos, n.pathLength); + final int maxLength = Math.min(length - pos, n.pathLength); int i; for(i = 0; i < maxLength; i++) if (mismatch = (word.getBoolean(pos + i) != get(path, i))) break; @@ -635,7 +637,7 @@ public class ImmutableBinaryTrie<T> extends AbstractObject2LongFunction<T> imple @Override public String toString() { - MutableString s = new MutableString(); + final MutableString s = new MutableString(); recToString(root, new MutableString(), s, new MutableString(), 0); return s.toString(); } diff --git a/src/it/unimi/dsi/util/ImmutableExternalPrefixMap.java b/src/it/unimi/dsi/util/ImmutableExternalPrefixMap.java index e6f2f7a..991abc0 100644 --- a/src/it/unimi/dsi/util/ImmutableExternalPrefixMap.java +++ b/src/it/unimi/dsi/util/ImmutableExternalPrefixMap.java @@ -1,3 +1,23 @@ +/* + * DSI utilities + * + * Copyright (C) 2005-2020 Sebastiano Vigna + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + * + */ + package it.unimi.dsi.util; import java.io.File; @@ -29,26 +49,6 @@ import com.martiansoftware.jsap.Switch; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; -/* - * DSI utilities - * - * Copyright (C) 2005-2020 Sebastiano Vigna - * - * This library is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 3 of the License, or (at your option) - * any later version. - * - * This library is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License - * for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program; if not, see <http://www.gnu.org/licenses/>. - * - */ - import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.bits.PrefixCoderTransformationStrategy; import it.unimi.dsi.compression.Decoder; diff --git a/src/it/unimi/dsi/util/Interval.java b/src/it/unimi/dsi/util/Interval.java index 083bbf1..d3b97fc 100644 --- a/src/it/unimi/dsi/util/Interval.java +++ b/src/it/unimi/dsi/util/Interval.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,7 +18,13 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static it.unimi.dsi.util.Intervals.EMPTY_INTERVAL; + +import java.io.Serializable; +import java.util.NoSuchElementException; + import it.unimi.dsi.fastutil.ints.AbstractIntSortedSet; import it.unimi.dsi.fastutil.ints.IntBidirectionalIterator; import it.unimi.dsi.fastutil.ints.IntComparator; @@ -29,9 +33,6 @@ import it.unimi.dsi.fastutil.ints.IntIterators; import it.unimi.dsi.fastutil.ints.IntSet; import it.unimi.dsi.fastutil.ints.IntSortedSet; -import java.io.Serializable; -import java.util.NoSuchElementException; - /** An interval of integers. An interval is defined * by two integers, called its {@link #left} and {@link #right} @@ -327,18 +328,18 @@ public final class Interval extends AbstractIntSortedSet implements IntSortedSet if (o instanceof Interval) return ((Interval)o).left == left && ((Interval)o).right == right; else if (o instanceof IntSortedSet) { // For sorted sets, we require the same order - IntSortedSet s = (IntSortedSet) o; + final IntSortedSet s = (IntSortedSet) o; if (s.size() != length()) return false; int n = length(); - IntIterator i = iterator(), j = s.iterator(); + final IntIterator i = iterator(), j = s.iterator(); while(n-- != 0) if (i.nextInt() != j.nextInt()) return false; return true; } else if (o instanceof IntSet) { // For sets, we just require the same elements - IntSet s = (IntSet) o; + final IntSet s = (IntSet) o; if (s.size() != length()) return false; int n = length(); - IntIterator i = iterator(); + final IntIterator i = iterator(); while(n-- != 0) if (! s.contains(i.nextInt())) return false; return true; } diff --git a/src/it/unimi/dsi/util/Intervals.java b/src/it/unimi/dsi/util/Intervals.java index 2220137..d5a5c8b 100644 --- a/src/it/unimi/dsi/util/Intervals.java +++ b/src/it/unimi/dsi/util/Intervals.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.util.Comparator; diff --git a/src/it/unimi/dsi/util/KahanSummation.java b/src/it/unimi/dsi/util/KahanSummation.java index b5434b1..b8ee471 100644 --- a/src/it/unimi/dsi/util/KahanSummation.java +++ b/src/it/unimi/dsi/util/KahanSummation.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * Copyright (C) 2011-2020 Sebastiano Vigna * @@ -18,6 +16,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + /** <a href="http://en.wikipedia.org/wiki/Kahan_summation_algorithm">Kahan's * summation algorithm</a> encapsulated in an object. */ diff --git a/src/it/unimi/dsi/util/LiterallySignedStringMap.java b/src/it/unimi/dsi/util/LiterallySignedStringMap.java index 7a072a1..862daa5 100644 --- a/src/it/unimi/dsi/util/LiterallySignedStringMap.java +++ b/src/it/unimi/dsi/util/LiterallySignedStringMap.java @@ -1,22 +1,3 @@ -package it.unimi.dsi.util; - -import java.io.IOException; -import java.io.Serializable; -import java.nio.charset.Charset; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.martiansoftware.jsap.FlaggedOption; -import com.martiansoftware.jsap.JSAP; -import com.martiansoftware.jsap.JSAPException; -import com.martiansoftware.jsap.JSAPResult; -import com.martiansoftware.jsap.Parameter; -import com.martiansoftware.jsap.SimpleJSAP; -import com.martiansoftware.jsap.Switch; -import com.martiansoftware.jsap.UnflaggedOption; -import com.martiansoftware.jsap.stringparsers.ForNameStringParser; - /* * DSI utilities * @@ -37,6 +18,24 @@ import com.martiansoftware.jsap.stringparsers.ForNameStringParser; * */ +package it.unimi.dsi.util; + +import java.io.IOException; +import java.io.Serializable; +import java.nio.charset.Charset; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.martiansoftware.jsap.FlaggedOption; +import com.martiansoftware.jsap.JSAP; +import com.martiansoftware.jsap.JSAPException; +import com.martiansoftware.jsap.JSAPResult; +import com.martiansoftware.jsap.Parameter; +import com.martiansoftware.jsap.SimpleJSAP; +import com.martiansoftware.jsap.Switch; +import com.martiansoftware.jsap.UnflaggedOption; +import com.martiansoftware.jsap.stringparsers.ForNameStringParser; import it.unimi.dsi.fastutil.io.BinIO; import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; diff --git a/src/it/unimi/dsi/util/LongInterval.java b/src/it/unimi/dsi/util/LongInterval.java index 9ea0d21..69b87f7 100644 --- a/src/it/unimi/dsi/util/LongInterval.java +++ b/src/it/unimi/dsi/util/LongInterval.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,7 +18,13 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static it.unimi.dsi.util.LongIntervals.EMPTY_INTERVAL; + +import java.io.Serializable; +import java.util.NoSuchElementException; + import it.unimi.dsi.fastutil.longs.AbstractLongSortedSet; import it.unimi.dsi.fastutil.longs.LongBidirectionalIterator; import it.unimi.dsi.fastutil.longs.LongComparator; @@ -29,9 +33,6 @@ import it.unimi.dsi.fastutil.longs.LongIterators; import it.unimi.dsi.fastutil.longs.LongSet; import it.unimi.dsi.fastutil.longs.LongSortedSet; -import java.io.Serializable; -import java.util.NoSuchElementException; - /** An interval of longs. See {@link Interval} for details. */ @@ -322,18 +323,18 @@ public final class LongInterval extends AbstractLongSortedSet implements LongSor if (o instanceof LongInterval) return ((LongInterval)o).left == left && ((LongInterval)o).right == right; else if (o instanceof LongSortedSet) { // For sorted sets, we require the same order - LongSortedSet s = (LongSortedSet) o; + final LongSortedSet s = (LongSortedSet) o; if (s.size() != length()) return false; long n = length(); - LongIterator i = iterator(), j = s.iterator(); + final LongIterator i = iterator(), j = s.iterator(); while(n-- != 0) if (i.nextLong() != j.nextLong()) return false; return true; } else if (o instanceof LongSet) { // For sets, we just require the same elements - LongSet s = (LongSet) o; + final LongSet s = (LongSet) o; if (s.size() != length()) return false; long n = length(); - LongIterator i = iterator(); + final LongIterator i = iterator(); while(n-- != 0) if (! s.contains(i.nextLong())) return false; return true; } diff --git a/src/it/unimi/dsi/util/LongIntervals.java b/src/it/unimi/dsi/util/LongIntervals.java index f43aa0c..b926a36 100644 --- a/src/it/unimi/dsi/util/LongIntervals.java +++ b/src/it/unimi/dsi/util/LongIntervals.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.util.Comparator; diff --git a/src/it/unimi/dsi/util/PermutedFrontCodedStringList.java b/src/it/unimi/dsi/util/PermutedFrontCodedStringList.java index c4b89ed..b411e47 100644 --- a/src/it/unimi/dsi/util/PermutedFrontCodedStringList.java +++ b/src/it/unimi/dsi/util/PermutedFrontCodedStringList.java @@ -1,16 +1,3 @@ -package it.unimi.dsi.util; - -import java.io.IOException; -import java.io.Serializable; - -import com.martiansoftware.jsap.JSAP; -import com.martiansoftware.jsap.JSAPException; -import com.martiansoftware.jsap.JSAPResult; -import com.martiansoftware.jsap.Parameter; -import com.martiansoftware.jsap.SimpleJSAP; -import com.martiansoftware.jsap.Switch; -import com.martiansoftware.jsap.UnflaggedOption; - /* * DSI utilities * @@ -31,6 +18,19 @@ import com.martiansoftware.jsap.UnflaggedOption; * */ +package it.unimi.dsi.util; + +import java.io.IOException; +import java.io.Serializable; + +import com.martiansoftware.jsap.JSAP; +import com.martiansoftware.jsap.JSAPException; +import com.martiansoftware.jsap.JSAPResult; +import com.martiansoftware.jsap.Parameter; +import com.martiansoftware.jsap.SimpleJSAP; +import com.martiansoftware.jsap.Switch; +import com.martiansoftware.jsap.UnflaggedOption; + import it.unimi.dsi.Util; import it.unimi.dsi.fastutil.ints.IntIterators; import it.unimi.dsi.fastutil.ints.IntListIterator; diff --git a/src/it/unimi/dsi/util/PrefixMap.java b/src/it/unimi/dsi/util/PrefixMap.java index 92ca247..c873e7c 100644 --- a/src/it/unimi/dsi/util/PrefixMap.java +++ b/src/it/unimi/dsi/util/PrefixMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import it.unimi.dsi.fastutil.objects.Object2ObjectFunction; /** A map from prefixes to string intervals (and possibly <i>vice versa</i>). diff --git a/src/it/unimi/dsi/util/Properties.java b/src/it/unimi/dsi/util/Properties.java index 3d2228c..9e5972e 100644 --- a/src/it/unimi/dsi/util/Properties.java +++ b/src/it/unimi/dsi/util/Properties.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.File; import java.io.FileOutputStream; import java.io.IOException; @@ -103,8 +103,7 @@ public class Properties extends PropertiesConfiguration implements Serializable // Methods to add properties represented by primitive types easily public void addProperties(final String key, final String[] s) { - for(int i = 0; i < s.length; i++) - super.addProperty(key, s[i]); + for (final String element : s) super.addProperty(key, element); } public void addProperty(final String key, final boolean b) { @@ -174,8 +173,7 @@ public class Properties extends PropertiesConfiguration implements Serializable // Same methods, but with Enum keys public void addProperties(final Enum<?> key, final String[] s) { - for(int i = 0; i < s.length; i++) - super.addProperty(key.name().toLowerCase(), s[i]); + for (final String element : s) super.addProperty(key.name().toLowerCase(), element); } public void addProperty(final Enum<?> key, final boolean b) { @@ -252,11 +250,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getProperty(key.name().toLowerCase()); } - public void addProperty(final Enum<?> key, Object arg) { + public void addProperty(final Enum<?> key, final Object arg) { addProperty(key.name().toLowerCase(), arg); } - public BigDecimal getBigDecimal(final Enum<?> key, BigDecimal arg) { + public BigDecimal getBigDecimal(final Enum<?> key, final BigDecimal arg) { return getBigDecimal(key.name().toLowerCase(), arg); } @@ -264,7 +262,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getBigDecimal(key.name().toLowerCase()); } - public BigInteger getBigInteger(final Enum<?> key, BigInteger arg) { + public BigInteger getBigInteger(final Enum<?> key, final BigInteger arg) { return getBigInteger(key.name().toLowerCase(), arg); } @@ -272,11 +270,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getBigInteger(key.name().toLowerCase()); } - public boolean getBoolean(final Enum<?> key, boolean arg) { + public boolean getBoolean(final Enum<?> key, final boolean arg) { return getBoolean(key.name().toLowerCase(), arg); } - public Boolean getBoolean(final Enum<?> key, Boolean arg) { + public Boolean getBoolean(final Enum<?> key, final Boolean arg) { return getBoolean(key.name().toLowerCase(), arg); } @@ -284,11 +282,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getBoolean(key.name().toLowerCase()); } - public byte getByte(final Enum<?> key, byte arg) { + public byte getByte(final Enum<?> key, final byte arg) { return getByte(key.name().toLowerCase(), arg); } - public Byte getByte(final Enum<?> key, Byte arg) { + public Byte getByte(final Enum<?> key, final Byte arg) { return getByte(key.name().toLowerCase(), arg); } @@ -296,11 +294,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getByte(key.name().toLowerCase()); } - public double getDouble(final Enum<?> key, double arg) { + public double getDouble(final Enum<?> key, final double arg) { return getDouble(key.name().toLowerCase(), arg); } - public Double getDouble(final Enum<?> key, Double arg) { + public Double getDouble(final Enum<?> key, final Double arg) { return getDouble(key.name().toLowerCase(), arg); } @@ -308,11 +306,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getDouble(key.name().toLowerCase()); } - public float getFloat(final Enum<?> key, float arg) { + public float getFloat(final Enum<?> key, final float arg) { return getFloat(key.name().toLowerCase(), arg); } - public Float getFloat(final Enum<?> key, Float arg) { + public Float getFloat(final Enum<?> key, final Float arg) { return getFloat(key.name().toLowerCase(), arg); } @@ -320,7 +318,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getFloat(key.name().toLowerCase()); } - public int getInt(final Enum<?> key, int arg) { + public int getInt(final Enum<?> key, final int arg) { return getInt(key.name().toLowerCase(), arg); } @@ -328,7 +326,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getInt(key.name().toLowerCase()); } - public Integer getInteger(final Enum<?> key, Integer arg) { + public Integer getInteger(final Enum<?> key, final Integer arg) { return getInteger(key.name().toLowerCase(), arg); } @@ -336,7 +334,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getKeys(key.name().toLowerCase()); } - public List<Object> getList(final Enum<?> key, List<Object> arg) { + public List<Object> getList(final Enum<?> key, final List<Object> arg) { return getList(key.name().toLowerCase(), arg); } @@ -344,11 +342,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getList(key.name().toLowerCase()); } - public long getLong(final Enum<?> key, long arg) { + public long getLong(final Enum<?> key, final long arg) { return getLong(key.name().toLowerCase(), arg); } - public Long getLong(final Enum<?> key, Long arg) { + public Long getLong(final Enum<?> key, final Long arg) { return getLong(key.name().toLowerCase(), arg); } @@ -356,7 +354,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getLong(key.name().toLowerCase()); } - public java.util.Properties getProperties(final Enum<?> key, java.util.Properties arg) { + public java.util.Properties getProperties(final Enum<?> key, final java.util.Properties arg) { return getProperties(key.name().toLowerCase(), arg); } @@ -364,11 +362,11 @@ public class Properties extends PropertiesConfiguration implements Serializable return getProperties(key.name().toLowerCase()); } - public short getShort(final Enum<?> key, short arg) { + public short getShort(final Enum<?> key, final short arg) { return getShort(key.name().toLowerCase(), arg); } - public Short getShort(final Enum<?> key, Short arg) { + public Short getShort(final Enum<?> key, final Short arg) { return getShort(key.name().toLowerCase(), arg); } @@ -376,7 +374,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getShort(key.name().toLowerCase()); } - public String getString(final Enum<?> key, String arg) { + public String getString(final Enum<?> key, final String arg) { return getString(key.name().toLowerCase(), arg); } @@ -388,7 +386,7 @@ public class Properties extends PropertiesConfiguration implements Serializable return getStringArray(key.name().toLowerCase()); } - public void setProperty(final Enum<?> key, Object arg) { + public void setProperty(final Enum<?> key, final Object arg) { setProperty(key.name().toLowerCase(), arg); } @@ -404,7 +402,7 @@ public class Properties extends PropertiesConfiguration implements Serializable @Override public int hashCode() { int h = 0; - for(Iterator<?> i = getKeys(); i.hasNext();) h = h * 31 + Arrays.hashCode(getStringArray((String)i.next())); + for(final Iterator<?> i = getKeys(); i.hasNext();) h = h * 31 + Arrays.hashCode(getStringArray((String)i.next())); return h; } @@ -425,13 +423,13 @@ public class Properties extends PropertiesConfiguration implements Serializable public boolean equals(final Object o) { if (! (o instanceof Properties)) return false; final Properties p = (Properties)o; - for(Iterator<?> i = getKeys(); i.hasNext();) { - String key = (String)i.next(); - String[] value = p.getStringArray(key); + for(final Iterator<?> i = getKeys(); i.hasNext();) { + final String key = (String)i.next(); + final String[] value = p.getStringArray(key); if (value == null || ! Arrays.equals(getStringArray(key), value)) return false; } - for(Iterator<?> i = p.getKeys(); i.hasNext();) + for(final Iterator<?> i = p.getKeys(); i.hasNext();) if (getStringArray((String)i.next()) == null) return false; return true; @@ -442,7 +440,7 @@ public class Properties extends PropertiesConfiguration implements Serializable try { save(s); } - catch (ConfigurationException e) { + catch (final ConfigurationException e) { throw new RuntimeException(e); } } @@ -452,7 +450,7 @@ public class Properties extends PropertiesConfiguration implements Serializable try { load(s); } - catch (ConfigurationException e) { + catch (final ConfigurationException e) { throw new RuntimeException(e); } } diff --git a/src/it/unimi/dsi/util/SemiExternalGammaList.java b/src/it/unimi/dsi/util/SemiExternalGammaList.java index 36058b0..3373da6 100644 --- a/src/it/unimi/dsi/util/SemiExternalGammaList.java +++ b/src/it/unimi/dsi/util/SemiExternalGammaList.java @@ -1,9 +1,7 @@ -package it.unimi.dsi.util; - -/* +/* * DSI utilities * - * Copyright (C) 2007-2020 Sebastiano Vigna + * Copyright (C) 2007-2020 Sebastiano Vigna * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the Free @@ -20,18 +18,20 @@ package it.unimi.dsi.util; * */ -import it.unimi.dsi.fastutil.longs.AbstractLongList; -import it.unimi.dsi.io.InputBitStream; -import it.unimi.dsi.io.OutputBitStream; +package it.unimi.dsi.util; import java.io.EOFException; import java.io.IOException; -/** Provides semi-external random access to a list of {@linkplain OutputBitStream#writeGamma(int) γ-encoded} integers. - * +import it.unimi.dsi.fastutil.longs.AbstractLongList; +import it.unimi.dsi.io.InputBitStream; +import it.unimi.dsi.io.OutputBitStream; + +/** Provides semi-external random access to a list of {@linkplain OutputBitStream#writeGamma(int) γ-encoded} integers. + * * <p>This class is a semi-external {@link it.unimi.dsi.fastutil.longs.LongList} that * MG4J uses to access files containing frequencies. - * + * * <p>Instead, this class accesses frequencies in their * compressed forms, and provides entry points for random access to each long. At construction * time, entry points are computed with a certain <em>step</em>, which is the number of longs @@ -39,14 +39,14 @@ import java.io.IOException; * be necessary to read to access a given long. * * <p><strong>Warning:</strong> This class is not thread safe, and needs to be synchronised to be used in a - * multithreaded environment. + * multithreaded environment. * * @author Fabien Campagne * @author Sebastiano Vigna */ public class SemiExternalGammaList extends AbstractLongList { public final static int DEFAULT_STEP = 128; - + /** Position in the offset stream for each random access entry point (one each {@link #step} elements). */ private final long[] position; /** Stream over the compressed offset information. */ @@ -57,7 +57,7 @@ public class SemiExternalGammaList extends AbstractLongList { private final int numLongs; /** Creates a new semi-external list. - * + * * @param longs a bit stream containing γ-encoded longs. * @param step the step used to build random-access entry points, or -1 to get {@link #DEFAULT_STEP}. * @param numLongs the overall number of offsets (i.e., the number of terms). @@ -65,7 +65,7 @@ public class SemiExternalGammaList extends AbstractLongList { public SemiExternalGammaList(final InputBitStream longs, final int step, final int numLongs) throws IOException { this.step = step == -1 ? DEFAULT_STEP : step; - int slots = (numLongs + this.step - 1) / this.step; + final int slots = (numLongs + this.step - 1) / this.step; this.position = new long[slots]; this.numLongs = numLongs; this.ibs = longs; @@ -78,19 +78,19 @@ public class SemiExternalGammaList extends AbstractLongList { } } - + /** Creates a new semi-external list. - * + * * <p>This quick-and-dirty constructor estimates the number of longs by checking * for an {@link EOFException}. - * + * * @param longs a bit stream containing γ-encoded longs. */ - + public SemiExternalGammaList(final InputBitStream longs) throws IOException { this(longs, DEFAULT_STEP, estimateNumberOfLongs(longs)); } - + private static int estimateNumberOfLongs(final InputBitStream longs) { int numLongs = 0; try { @@ -100,14 +100,14 @@ public class SemiExternalGammaList extends AbstractLongList { numLongs++; } } - catch(EOFException e) { + catch(final EOFException e) { return numLongs; } - catch (IOException e) { + catch (final IOException e) { throw new RuntimeException(e); } } - + @Override public final long getLong(final int index) { if (index < 0 || index >= numLongs) throw new IndexOutOfBoundsException(Integer.toString(index)); @@ -118,11 +118,11 @@ public class SemiExternalGammaList extends AbstractLongList { ibs.skipGammas(k); return ibs.readLongGamma(); } - catch(IOException e) { + catch(final IOException e) { throw new RuntimeException(e); } } - + @Override public int size() { return numLongs; diff --git a/src/it/unimi/dsi/util/ShiftAddXorSignedStringMap.java b/src/it/unimi/dsi/util/ShiftAddXorSignedStringMap.java index 3fbb69a..ddefbfb 100644 --- a/src/it/unimi/dsi/util/ShiftAddXorSignedStringMap.java +++ b/src/it/unimi/dsi/util/ShiftAddXorSignedStringMap.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,17 +18,7 @@ package it.unimi.dsi.util; * */ - -import it.unimi.dsi.bits.LongArrayBitVector; -import it.unimi.dsi.fastutil.Function; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.longs.LongBigList; -import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; -import it.unimi.dsi.fastutil.objects.Object2LongFunction; -import it.unimi.dsi.fastutil.objects.ObjectList; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.io.LineIterator; -import it.unimi.dsi.lang.MutableString; +package it.unimi.dsi.util; import java.io.FileInputStream; import java.io.IOException; @@ -54,6 +42,17 @@ import com.martiansoftware.jsap.Switch; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; +import it.unimi.dsi.bits.LongArrayBitVector; +import it.unimi.dsi.fastutil.Function; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.longs.LongBigList; +import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; +import it.unimi.dsi.fastutil.objects.Object2LongFunction; +import it.unimi.dsi.fastutil.objects.ObjectList; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.io.LineIterator; +import it.unimi.dsi.lang.MutableString; + /** A string map based on a function signed using Shift-Add-Xor hashes. * * <p>A minimal perfect hash function maps a set of string to an initial segment of the natural @@ -124,7 +123,8 @@ public class ShiftAddXorSignedStringMap extends AbstractObject2LongFunction<Char } private long signature(final CharSequence s) { - int i, l = s.length(); + int i; + final int l = s.length(); long h = 42; for (i = l; i-- != 0;) h ^= (h << 5) + s.charAt(i) + (h >>> 2); @@ -137,21 +137,21 @@ public class ShiftAddXorSignedStringMap extends AbstractObject2LongFunction<Char } @Override - public long getLong(Object o) { + public long getLong(final Object o) { final CharSequence s = (CharSequence)o; final long index = function.getLong(s); return checkSignature(s, index) ? index : defRetValue; } @Override - public Long get(Object o) { + public Long get(final Object o) { final CharSequence s = (CharSequence)o; final long index = function.getLong(s); return checkSignature(s, index) ? Long.valueOf(index) : null; } @Override - public boolean containsKey(Object o) { + public boolean containsKey(final Object o) { final CharSequence s = (CharSequence)o; return checkSignature(s, function.getLong(s)); } @@ -180,7 +180,7 @@ public class ShiftAddXorSignedStringMap extends AbstractObject2LongFunction<Char new UnflaggedOption("stringFile", JSAP.STRING_PARSER, JSAP.NO_DEFAULT, JSAP.NOT_REQUIRED, JSAP.NOT_GREEDY, "Read strings from this file instead of standard input."), }); - JSAPResult jsapResult = jsap.parse(arg); + final JSAPResult jsapResult = jsap.parse(arg); if (jsap.messagePrinted()) return; final int bufferSize = jsapResult.getInt("bufferSize"); diff --git a/src/it/unimi/dsi/util/SplitMix64Random.java b/src/it/unimi/dsi/util/SplitMix64Random.java index 9c70b1d..bbd6c14 100644 --- a/src/it/unimi/dsi/util/SplitMix64Random.java +++ b/src/it/unimi/dsi/util/SplitMix64Random.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,13 +18,14 @@ package it.unimi.dsi.util; * */ - -import it.unimi.dsi.Util; -import it.unimi.dsi.fastutil.HashCommon; +package it.unimi.dsi.util; import java.util.Random; import java.util.SplittableRandom; +import it.unimi.dsi.Util; +import it.unimi.dsi.fastutil.HashCommon; + /** A fast, high-quality, non-splittable version of the <span style="font-variant: small-caps">SplitMix</span> * pseudorandom number generator used by {@link SplittableRandom}. Due to * the fixed increment constant and to different strategies in generating finite ranges, the methods of this generator diff --git a/src/it/unimi/dsi/util/SplitMix64RandomGenerator.java b/src/it/unimi/dsi/util/SplitMix64RandomGenerator.java index 057082d..ac20b57 100644 --- a/src/it/unimi/dsi/util/SplitMix64RandomGenerator.java +++ b/src/it/unimi/dsi/util/SplitMix64RandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,17 +18,18 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import java.io.Serializable; import java.util.SplittableRandom; +import org.apache.commons.math3.random.AbstractRandomGenerator; +import org.apache.commons.math3.random.RandomGenerator; + import it.unimi.dsi.Util; import it.unimi.dsi.fastutil.HashCommon; import it.unimi.dsi.logging.ProgressLogger; -import org.apache.commons.math3.random.AbstractRandomGenerator; -import org.apache.commons.math3.random.RandomGenerator; - /** A fast, high-quality, non-splittable version of the <span style="font-variant: small-caps">SplitMix</span> * pseudorandom number generator used by {@link SplittableRandom}. Due to * the fixed increment constant and to different strategies in generating finite ranges, the methods of this generator @@ -162,11 +161,11 @@ public class SplitMix64RandomGenerator extends AbstractRandomGenerator implement x = state; } - public static void main(String[] arg) { - long n = Long.parseLong(arg[0]); + public static void main(final String[] arg) { + final long n = Long.parseLong(arg[0]); long x = 0; - ProgressLogger pl = new ProgressLogger(); - SplitMix64RandomGenerator r = new SplitMix64RandomGenerator(); + final ProgressLogger pl = new ProgressLogger(); + final SplitMix64RandomGenerator r = new SplitMix64RandomGenerator(); for(int k = 10; k-- != 0;) { pl.start("Measuring..."); for (long i = n; i-- != 0;) diff --git a/src/it/unimi/dsi/util/StringMap.java b/src/it/unimi/dsi/util/StringMap.java index 467f18f..3e301f3 100644 --- a/src/it/unimi/dsi/util/StringMap.java +++ b/src/it/unimi/dsi/util/StringMap.java @@ -1,7 +1,3 @@ -package it.unimi.dsi.util; - -import java.io.Serializable; - /* * DSI utilities * @@ -22,6 +18,10 @@ import java.io.Serializable; * */ +package it.unimi.dsi.util; + +import java.io.Serializable; + import it.unimi.dsi.fastutil.objects.Object2LongFunction; import it.unimi.dsi.fastutil.objects.ObjectList; diff --git a/src/it/unimi/dsi/util/StringMaps.java b/src/it/unimi/dsi/util/StringMaps.java index f27b738..0835356 100644 --- a/src/it/unimi/dsi/util/StringMaps.java +++ b/src/it/unimi/dsi/util/StringMaps.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,13 +18,15 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + +import java.io.Serializable; + import it.unimi.dsi.fastutil.objects.Object2ObjectFunction; import it.unimi.dsi.fastutil.objects.Object2ObjectFunctions; import it.unimi.dsi.fastutil.objects.ObjectList; import it.unimi.dsi.fastutil.objects.ObjectLists; -import java.io.Serializable; - /** A class providing static methods and objects that do useful things with {@linkplain StringMap string maps} * and {@linkplain PrefixMap prefix maps}. * @@ -62,35 +62,35 @@ public class StringMaps { } @Override - public synchronized long getLong(Object s) { + public synchronized long getLong(final Object s) { return stringMap.getLong(s); } @SuppressWarnings("deprecation") @Override - public synchronized Long get(Object key) { + public synchronized Long get(final Object key) { return stringMap.get(key); } @Override - public synchronized long put(CharSequence key, long value) { + public synchronized long put(final CharSequence key, final long value) { return stringMap.put(key, value); } @SuppressWarnings("deprecation") @Override - public synchronized Long put(CharSequence key, Long value) { + public synchronized Long put(final CharSequence key, final Long value) { return stringMap.put(key, value); } @SuppressWarnings("deprecation") @Override - public synchronized Long remove(Object key) { + public synchronized Long remove(final Object key) { return stringMap.remove(key); } @Override - public synchronized long removeLong(Object key) { + public synchronized long removeLong(final Object key) { return stringMap.removeLong(key); } @@ -100,7 +100,7 @@ public class StringMaps { } @Override - public synchronized boolean containsKey(Object key) { + public synchronized boolean containsKey(final Object key) { return stringMap.containsKey(key); } @@ -110,7 +110,7 @@ public class StringMaps { } @Override - public synchronized void defaultReturnValue(long rv) { + public synchronized void defaultReturnValue(final long rv) { stringMap.defaultReturnValue(rv); } } diff --git a/src/it/unimi/dsi/util/TernaryIntervalSearchTree.java b/src/it/unimi/dsi/util/TernaryIntervalSearchTree.java index dac4d12..a9122c8 100644 --- a/src/it/unimi/dsi/util/TernaryIntervalSearchTree.java +++ b/src/it/unimi/dsi/util/TernaryIntervalSearchTree.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,10 +18,7 @@ package it.unimi.dsi.util; * */ -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.lang.MutableString; -import it.unimi.dsi.logging.ProgressLogger; +package it.unimi.dsi.util; import java.io.IOException; import java.io.InputStreamReader; @@ -41,6 +36,11 @@ import com.martiansoftware.jsap.SimpleJSAP; import com.martiansoftware.jsap.UnflaggedOption; import com.martiansoftware.jsap.stringparsers.ForNameStringParser; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.lang.MutableString; +import it.unimi.dsi.logging.ProgressLogger; + /** Ternary interval search trees. * * <p><em>Ternary search trees</em> are a data structure used to store words over an alphabet; they are @@ -303,7 +303,7 @@ public class TernaryIntervalSearchTree extends AbstractPrefixMap implements Seri } @Override - public boolean containsKey(Object o) { + public boolean containsKey(final Object o) { return getIndex((CharSequence)o) != -1; } @@ -444,12 +444,12 @@ public class TernaryIntervalSearchTree extends AbstractPrefixMap implements Seri new UnflaggedOption("tree", JSAP.STRING_PARSER, JSAP.NO_DEFAULT, JSAP.REQUIRED, JSAP.NOT_GREEDY, "The filename for the serialised tree.") }); - JSAPResult jsapResult = jsap.parse(arg); + final JSAPResult jsapResult = jsap.parse(arg); if (jsap.messagePrinted()) return; final TernaryIntervalSearchTree tree = new TernaryIntervalSearchTree(); - MutableString term = new MutableString(); + final MutableString term = new MutableString(); final ProgressLogger pl = new ProgressLogger(); pl.itemsName = "terms"; @SuppressWarnings("resource") diff --git a/src/it/unimi/dsi/util/TextPattern.java b/src/it/unimi/dsi/util/TextPattern.java index e4deff6..d89331b 100644 --- a/src/it/unimi/dsi/util/TextPattern.java +++ b/src/it/unimi/dsi/util/TextPattern.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import it.unimi.dsi.bits.Fast; import it.unimi.dsi.fastutil.chars.CharList; import it.unimi.dsi.lang.MutableString; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandom.java b/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandom.java index 375f8ac..942c58f 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandom.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGenerator.java b/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGenerator.java index 0e8d00b..2e5e251 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.Random; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128PlusRandom.java b/src/it/unimi/dsi/util/XoRoShiRo128PlusRandom.java index 1c201e7..d1477fc 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128PlusRandom.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128PlusRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128PlusRandomGenerator.java b/src/it/unimi/dsi/util/XoRoShiRo128PlusRandomGenerator.java index abc9587..e2a8983 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128PlusRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128PlusRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.Random; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandom.java b/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandom.java index b9630a4..7180de5 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandom.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGenerator.java b/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGenerator.java index ab9cdb9..ee5f25b 100644 --- a/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.Random; diff --git a/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandom.java b/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandom.java index ab84329..b3aa516 100644 --- a/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandom.java +++ b/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGenerator.java b/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGenerator.java index 298e20c..0bb6820 100644 --- a/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoShiRo256PlusRandom.java b/src/it/unimi/dsi/util/XoShiRo256PlusRandom.java index 7d14eac..a4ec8a6 100644 --- a/src/it/unimi/dsi/util/XoShiRo256PlusRandom.java +++ b/src/it/unimi/dsi/util/XoShiRo256PlusRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoShiRo256PlusRandomGenerator.java b/src/it/unimi/dsi/util/XoShiRo256PlusRandomGenerator.java index 57386bf..ba1c1a1 100644 --- a/src/it/unimi/dsi/util/XoShiRo256PlusRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoShiRo256PlusRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoShiRo256StarStarRandom.java b/src/it/unimi/dsi/util/XoShiRo256StarStarRandom.java index 7bf9f1b..565f07a 100644 --- a/src/it/unimi/dsi/util/XoShiRo256StarStarRandom.java +++ b/src/it/unimi/dsi/util/XoShiRo256StarStarRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.security.SecureRandom; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XoShiRo256StarStarRandomGenerator.java b/src/it/unimi/dsi/util/XoShiRo256StarStarRandomGenerator.java index 5d56d83..974da04 100644 --- a/src/it/unimi/dsi/util/XoShiRo256StarStarRandomGenerator.java +++ b/src/it/unimi/dsi/util/XoShiRo256StarStarRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.security.SecureRandom; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XorShift1024StarPhiRandom.java b/src/it/unimi/dsi/util/XorShift1024StarPhiRandom.java index 82a25d0..89ec59a 100644 --- a/src/it/unimi/dsi/util/XorShift1024StarPhiRandom.java +++ b/src/it/unimi/dsi/util/XorShift1024StarPhiRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import java.security.SecureRandom; import java.util.Random; diff --git a/src/it/unimi/dsi/util/XorShift1024StarPhiRandomGenerator.java b/src/it/unimi/dsi/util/XorShift1024StarPhiRandomGenerator.java index f8eea87..fdf2e4c 100644 --- a/src/it/unimi/dsi/util/XorShift1024StarPhiRandomGenerator.java +++ b/src/it/unimi/dsi/util/XorShift1024StarPhiRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import java.io.Serializable; import java.security.SecureRandom; diff --git a/src/it/unimi/dsi/util/XorShift1024StarRandom.java b/src/it/unimi/dsi/util/XorShift1024StarRandom.java index 1974532..5980546 100644 --- a/src/it/unimi/dsi/util/XorShift1024StarRandom.java +++ b/src/it/unimi/dsi/util/XorShift1024StarRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.util.Random; import it.unimi.dsi.Util; diff --git a/src/it/unimi/dsi/util/XorShift1024StarRandomGenerator.java b/src/it/unimi/dsi/util/XorShift1024StarRandomGenerator.java index 36640b1..ff23ebc 100644 --- a/src/it/unimi/dsi/util/XorShift1024StarRandomGenerator.java +++ b/src/it/unimi/dsi/util/XorShift1024StarRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.io.Serializable; import java.util.Random; diff --git a/src/it/unimi/dsi/util/XorShift128PlusRandom.java b/src/it/unimi/dsi/util/XorShift128PlusRandom.java index 7d10a0b..12a821b 100644 --- a/src/it/unimi/dsi/util/XorShift128PlusRandom.java +++ b/src/it/unimi/dsi/util/XorShift128PlusRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XorShift128PlusRandomGenerator.java b/src/it/unimi/dsi/util/XorShift128PlusRandomGenerator.java index 55c66d5..7d156fd 100644 --- a/src/it/unimi/dsi/util/XorShift128PlusRandomGenerator.java +++ b/src/it/unimi/dsi/util/XorShift128PlusRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import java.util.Random; import java.util.SplittableRandom; diff --git a/src/it/unimi/dsi/util/XorShift64StarRandom.java b/src/it/unimi/dsi/util/XorShift64StarRandom.java index 73e8e57..4f09e37 100644 --- a/src/it/unimi/dsi/util/XorShift64StarRandom.java +++ b/src/it/unimi/dsi/util/XorShift64StarRandom.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -21,11 +19,13 @@ package it.unimi.dsi.util; */ -import it.unimi.dsi.Util; -import it.unimi.dsi.fastutil.HashCommon; +package it.unimi.dsi.util; import java.util.Random; +import it.unimi.dsi.Util; +import it.unimi.dsi.fastutil.HashCommon; + /** A fast, good-quality {@linkplain Random pseudorandom number generator} * that combines George Marsaglia's Xorshift * generators (described in <a href="http://www.jstatsoft.org/v08/i14/paper/">“Xorshift RNGs”</a>, @@ -54,7 +54,7 @@ public class XorShift64StarRandom extends Random { } @Override - protected int next(int bits) { + protected int next(final int bits) { return (int)(nextLong() & (1L << bits) - 1); } diff --git a/src/it/unimi/dsi/util/XorShift64StarRandomGenerator.java b/src/it/unimi/dsi/util/XorShift64StarRandomGenerator.java index 26b0e86..fcb453b 100644 --- a/src/it/unimi/dsi/util/XorShift64StarRandomGenerator.java +++ b/src/it/unimi/dsi/util/XorShift64StarRandomGenerator.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,14 +18,15 @@ package it.unimi.dsi.util; * */ - -import it.unimi.dsi.Util; -import it.unimi.dsi.fastutil.HashCommon; +package it.unimi.dsi.util; import java.util.Random; import org.apache.commons.math3.random.AbstractRandomGenerator; +import it.unimi.dsi.Util; +import it.unimi.dsi.fastutil.HashCommon; + /** A fast, good-quality {@linkplain Random pseudorandom number generator} * that combines George Marsaglia's Xorshift * generators (described in <a href="http://www.jstatsoft.org/v08/i14/paper/">“Xorshift RNGs”</a>, diff --git a/src/it/unimi/dsi/util/concurrent/ReorderingBlockingQueue.java b/src/it/unimi/dsi/util/concurrent/ReorderingBlockingQueue.java index ccf38d7..7dc8bb8 100644 --- a/src/it/unimi/dsi/util/concurrent/ReorderingBlockingQueue.java +++ b/src/it/unimi/dsi/util/concurrent/ReorderingBlockingQueue.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util.concurrent; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util.concurrent; * */ +package it.unimi.dsi.util.concurrent; + import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.ReentrantLock; diff --git a/test/it/unimi/dsi/UtilTest.java b/test/it/unimi/dsi/UtilTest.java index d44c7d5..23cee51 100644 --- a/test/it/unimi/dsi/UtilTest.java +++ b/test/it/unimi/dsi/UtilTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi; * */ +package it.unimi.dsi; import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; diff --git a/test/it/unimi/dsi/big/util/FrontCodedStringBigListTest.java b/test/it/unimi/dsi/big/util/FrontCodedStringBigListTest.java index dfa83ea..492c823 100644 --- a/test/it/unimi/dsi/big/util/FrontCodedStringBigListTest.java +++ b/test/it/unimi/dsi/big/util/FrontCodedStringBigListTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import static org.junit.Assert.assertEquals; import java.nio.charset.StandardCharsets; diff --git a/test/it/unimi/dsi/big/util/ImmutableBinaryTrieTest.java b/test/it/unimi/dsi/big/util/ImmutableBinaryTrieTest.java index 7efa0d8..2b1d1af 100644 --- a/test/it/unimi/dsi/big/util/ImmutableBinaryTrieTest.java +++ b/test/it/unimi/dsi/big/util/ImmutableBinaryTrieTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; import static org.junit.Assert.assertEquals; @@ -35,11 +34,11 @@ import it.unimi.dsi.fastutil.objects.ObjectLists; public class ImmutableBinaryTrieTest { - public void testImmutableBinaryTrie(List<String> strings) { + public void testImmutableBinaryTrie(final List<String> strings) { final ObjectArrayList<BitVector> vectors = new ObjectArrayList<>(); - for(int i = 0; i < strings.size(); i++) { - final BitVector v = LongArrayBitVector.ofLength(strings.get(i).length()); - for(int j = 0; j < strings.get(i).length(); j++) if (strings.get(i).charAt(j) == '1') v.set(j); + for (final String string : strings) { + final BitVector v = LongArrayBitVector.ofLength(string.length()); + for(int j = 0; j < string.length(); j++) if (string.charAt(j) == '1') v.set(j); vectors.add(v); } diff --git a/test/it/unimi/dsi/big/util/ImmutableExternalPrefixMapTest.java b/test/it/unimi/dsi/big/util/ImmutableExternalPrefixMapTest.java index 7fcd0fe..7fe6401 100644 --- a/test/it/unimi/dsi/big/util/ImmutableExternalPrefixMapTest.java +++ b/test/it/unimi/dsi/big/util/ImmutableExternalPrefixMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,15 +18,11 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; -import it.unimi.dsi.fastutil.objects.ObjectRBTreeSet; -import it.unimi.dsi.fastutil.objects.ObjectSets; -import it.unimi.dsi.util.LongInterval; -import it.unimi.dsi.util.LongIntervals; import java.io.IOException; import java.util.Arrays; @@ -37,37 +31,40 @@ import java.util.Iterator; import org.junit.Test; +import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectRBTreeSet; +import it.unimi.dsi.fastutil.objects.ObjectSets; +import it.unimi.dsi.util.LongInterval; +import it.unimi.dsi.util.LongIntervals; + public class ImmutableExternalPrefixMapTest { public void testLargeSet(final int blockSize) throws IOException { - Collection<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS); + final Collection<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS); TernaryIntervalSearchTree t = new TernaryIntervalSearchTree(c); ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(c, blockSize); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) assertTrue(TernaryIntervalSearchTreeTest.WORDS[i], d.containsKey(TernaryIntervalSearchTreeTest.WORDS[i])); + for (final String element : TernaryIntervalSearchTreeTest.WORDS) assertTrue(element, d.containsKey(element)); for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) assertEquals(TernaryIntervalSearchTreeTest.WORDS[i], d.list().get(i).toString()); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) - for(int j = 0; j < TernaryIntervalSearchTreeTest.WORDS[i].length(); j++) { - String s = TernaryIntervalSearchTreeTest.WORDS[i].substring(0, j + 1); - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - s = s + " "; - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - s = s.substring(0, s.length() - 1) + "~"; - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - } + for (final String element : TernaryIntervalSearchTreeTest.WORDS) for(int j = 0; j < element.length(); j++) { + String s = element.substring(0, j + 1); + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + s = s + " "; + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + s = s.substring(0, s.length() - 1) + "~"; + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + } // Similar tests, using all prefixes of all strings in WORDS. - Collection<String> p = new ObjectRBTreeSet<>(); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) - for(int j = 0; j < TernaryIntervalSearchTreeTest.WORDS[i].length(); j++) - p.add(TernaryIntervalSearchTreeTest.WORDS[i].substring(0, j + 1)); + final Collection<String> p = new ObjectRBTreeSet<>(); + for (final String element : TernaryIntervalSearchTreeTest.WORDS) for(int j = 0; j < element.length(); j++) + p.add(element.substring(0, j + 1)); d = new ImmutableExternalPrefixMap(p, blockSize); t = new TernaryIntervalSearchTree(p); int j = 0; - for(Iterator<String> i = p.iterator(); i.hasNext();) { - String s = i.next(); + for (final String s : p) { assertTrue(s, d.containsKey(s)); assertEquals(s, d.list().get(j++).toString()); assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); @@ -111,13 +108,13 @@ public class ImmutableExternalPrefixMapTest { @Test public void testPrefixes() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ba", "bb" })); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ba", "bb" })); assertEquals(LongInterval.valueOf(1, 2), d.getInterval("b")); } @Test public void testLargeRootPrefixes() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "aab", "aac", "aad" }), 2); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "aab", "aac", "aad" }), 2); assertEquals(LongInterval.valueOf(0, 2), d.getInterval("")); assertEquals(LongInterval.valueOf(0, 2), d.getInterval("aa")); assertEquals(LongInterval.valueOf(0, 2), d.getInterval("aa")); @@ -125,7 +122,7 @@ public class ImmutableExternalPrefixMapTest { @Test public void testSingleton() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(ObjectSets.singleton("a"), 1024); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(ObjectSets.singleton("a"), 1024); assertTrue(d.containsKey("a")); assertFalse(d.containsKey("b")); assertFalse(d.containsKey("0")); @@ -133,7 +130,7 @@ public class ImmutableExternalPrefixMapTest { @Test public void testPrefixOutOfRange() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ac" })); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ac" })); assertEquals(LongIntervals.EMPTY_INTERVAL, d.getInterval("b")); assertEquals(LongInterval.valueOf(0, 1), d.getInterval("a")); } diff --git a/test/it/unimi/dsi/big/util/LiterallySignedStringMapTest.java b/test/it/unimi/dsi/big/util/LiterallySignedStringMapTest.java index 695d186..3c02cff 100644 --- a/test/it/unimi/dsi/big/util/LiterallySignedStringMapTest.java +++ b/test/it/unimi/dsi/big/util/LiterallySignedStringMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,8 +18,18 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; import static org.junit.Assert.assertEquals; + +import java.io.File; +import java.io.IOException; +import java.io.Serializable; +import java.util.Arrays; +import java.util.Collections; + +import org.junit.Test; + import it.unimi.dsi.fastutil.Hash; import it.unimi.dsi.fastutil.Size64; import it.unimi.dsi.fastutil.io.BinIO; @@ -32,28 +40,20 @@ import it.unimi.dsi.fastutil.objects.ObjectBigLists; import it.unimi.dsi.lang.MutableString; import it.unimi.dsi.util.FrontCodedStringList; -import java.io.File; -import java.io.IOException; -import java.io.Serializable; -import java.util.Arrays; -import java.util.Collections; - -import org.junit.Test; - public class LiterallySignedStringMapTest { private final static class CharSequenceStrategy implements Hash.Strategy<CharSequence>, Serializable { private static final long serialVersionUID = 1L; @Override - public boolean equals(CharSequence a, CharSequence b) { + public boolean equals(final CharSequence a, final CharSequence b) { if (a == null) return b == null; if (b == null) return false; return a.toString().equals(b.toString()); } @Override - public int hashCode(CharSequence o) { + public int hashCode(final CharSequence o) { return o.toString().hashCode(); } } @@ -61,13 +61,13 @@ public class LiterallySignedStringMapTest { @Test public void testNumbers() throws IOException, ClassNotFoundException { for(int n = 10; n < 10000; n *= 10) { - String[] s = new String[n]; + final String[] s = new String[n]; for(int i = s.length; i-- != 0;) s[i] = Integer.toString(i); Collections.shuffle(Arrays.asList(s)); - FrontCodedStringList fcl = new FrontCodedStringList(Arrays.asList(s), 8, true); + final FrontCodedStringList fcl = new FrontCodedStringList(Arrays.asList(s), 8, true); // Test with mph - Object2LongOpenCustomHashMap<CharSequence> mph = new Object2LongOpenCustomHashMap<>(new CharSequenceStrategy()); + final Object2LongOpenCustomHashMap<CharSequence> mph = new Object2LongOpenCustomHashMap<>(new CharSequenceStrategy()); mph.defaultReturnValue(-1); for(int i = 0; i < s.length; i++) mph.put(new MutableString(s[i]), i); @@ -76,7 +76,7 @@ public class LiterallySignedStringMapTest { for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(s[i])); for(int i = s.length + n; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); BinIO.storeObject(map, temp); map = (LiterallySignedStringMap)BinIO.loadObject(temp); @@ -90,23 +90,23 @@ public class LiterallySignedStringMapTest { private static final long serialVersionUID = 1L; @Override - public long getLong(Object key) { + public long getLong(final Object key) { try { final long l = Long.parseLong(key.toString()); return l < 1L << 31 ? l : -1; } - catch(Exception e) { + catch(final Exception e) { return -1; } } @Override - public boolean containsKey(Object key) { + public boolean containsKey(final Object key) { try { final long l = Long.parseLong(key.toString()); return l < 1L << 31; } - catch(Exception e) { + catch(final Exception e) { return false; } } @@ -127,7 +127,7 @@ public class LiterallySignedStringMapTest { new LiterallySignedStringMap(new LargeFunction(), new AbstractObjectBigList<MutableString>() { @Override - public MutableString get(long index) { + public MutableString get(final long index) { return new MutableString(Long.toString(index)); } diff --git a/test/it/unimi/dsi/big/util/LongBigArraySignedStringMapTest.java b/test/it/unimi/dsi/big/util/LongBigArraySignedStringMapTest.java index 840b466..3302263 100644 --- a/test/it/unimi/dsi/big/util/LongBigArraySignedStringMapTest.java +++ b/test/it/unimi/dsi/big/util/LongBigArraySignedStringMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,10 +18,9 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.longs.LongBigArrayBigList; -import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; import java.io.File; import java.io.IOException; @@ -31,6 +28,10 @@ import java.util.Arrays; import org.junit.Test; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.longs.LongBigArrayBigList; +import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; + public class LongBigArraySignedStringMapTest { @SuppressWarnings("deprecation") @@ -38,12 +39,12 @@ public class LongBigArraySignedStringMapTest { public void testNumbers() throws IOException { for(int width = 16; width <= Long.SIZE; width += 8) { - String[] s = new String[100000]; - long[] v = new long[s.length]; + final String[] s = new String[100000]; + final long[] v = new long[s.length]; for(int i = s.length; i-- != 0;) s[(int)(v[i] = i)] = Integer.toString(i); // Test with mph - Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); + final Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); final long[][] signatures = LongBigListSignedStringMap.sign(Arrays.asList(s).iterator(), mph); LongBigListSignedStringMap map = new LongBigListSignedStringMap(mph, LongBigArrayBigList.wrap(signatures)); @@ -51,7 +52,7 @@ public class LongBigArraySignedStringMapTest { for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(Integer.toString(i))); for(int i = s.length + 100; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); BinIO.storeLongs(signatures, temp); @@ -70,18 +71,18 @@ public class LongBigArraySignedStringMapTest { public void testSortedNumbers() throws IOException { for(int width = 16; width <= Long.SIZE; width += 8) { - String[] s = new String[100000]; - long[] v = new long[s.length]; + final String[] s = new String[100000]; + final long[] v = new long[s.length]; for(int i = s.length; i-- != 0;) s[(int)(v[i] = i)] = Integer.toString(i); // Test with mph - Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); + final Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); LongBigListSignedStringMap.sign(Arrays.asList(s).iterator(), temp.toString()); - LongBigListSignedStringMap map = new LongBigListSignedStringMap(mph, temp.toString()); + final LongBigListSignedStringMap map = new LongBigListSignedStringMap(mph, temp.toString()); for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(Integer.toString(i))); for(int i = s.length + 10000; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); diff --git a/test/it/unimi/dsi/big/util/SemiExternalGammaBigListTest.java b/test/it/unimi/dsi/big/util/SemiExternalGammaBigListTest.java index 1e9bebc..04b4537 100644 --- a/test/it/unimi/dsi/big/util/SemiExternalGammaBigListTest.java +++ b/test/it/unimi/dsi/big/util/SemiExternalGammaBigListTest.java @@ -1,9 +1,7 @@ -package it.unimi.dsi.big.util; - -/* +/* * DSI utilities * - * Copyright (C) 2002-2020 Sebastiano Vigna + * Copyright (C) 2002-2020 Sebastiano Vigna * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the Free @@ -20,31 +18,34 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.longs.LongArrayList; -import it.unimi.dsi.fastutil.longs.LongList; -import it.unimi.dsi.io.InputBitStream; -import it.unimi.dsi.io.OutputBitStream; import java.io.IOException; import org.junit.Test; +import it.unimi.dsi.fastutil.longs.LongArrayList; +import it.unimi.dsi.fastutil.longs.LongList; +import it.unimi.dsi.io.InputBitStream; +import it.unimi.dsi.io.OutputBitStream; + /** * @author Fabien Campagne * @author Sebastiano Vigna */ public class SemiExternalGammaBigListTest { - private static InputBitStream buildInputStream(LongList longs) throws IOException { - byte[] array = new byte[longs.size() * 4]; + private static InputBitStream buildInputStream(final LongList longs) throws IOException { + final byte[] array = new byte[longs.size() * 4]; @SuppressWarnings("resource") + final OutputBitStream streamer = new OutputBitStream(array); for (int i = 0; i < longs.size(); i++) streamer.writeLongGamma(longs.getLong(i)); - int size = (int)(streamer.writtenBits() / 8) + ((streamer.writtenBits() % 8) == 0 ? 0 : 1); - byte[] smaller = new byte[size]; + final int size = (int)(streamer.writtenBits() / 8) + ((streamer.writtenBits() % 8) == 0 ? 0 : 1); + final byte[] smaller = new byte[size]; System.arraycopy(array, 0, smaller, 0, size); return new InputBitStream(smaller); @@ -54,8 +55,8 @@ public class SemiExternalGammaBigListTest { @Test public void testSemiExternalGammaBigListGammaCoding() throws IOException { - long[] longs = { 10, 300, 450, 650, 1000, 1290, 1699 }; - LongList listLongs = new LongArrayList(longs); + final long[] longs = { 10, 300, 450, 650, 1000, 1290, 1699 }; + final LongList listLongs = new LongArrayList(longs); SemiExternalGammaBigList list = new SemiExternalGammaBigList(buildInputStream(listLongs), 1, listLongs.size()); for (long i = 0; i < longs.length; ++i) { @@ -76,7 +77,7 @@ public class SemiExternalGammaBigListTest { for (long i = 0; i < longs.length; ++i) { assertEquals(("test failed for index: " + i), longs[(int) i], list.getLong(i)); } - + list = new SemiExternalGammaBigList(buildInputStream(listLongs), 8, listLongs.size()); for (long i = 0; i < longs.length; ++i) { assertEquals(("test failed for index: " + i), longs[(int) i], list.getLong(i)); @@ -86,8 +87,8 @@ public class SemiExternalGammaBigListTest { @Test public void testEmptySemiExternalGammaBigListGammaCoding() throws IOException { - long[] longs = { }; - LongList listOffsets = new LongArrayList(longs); + final long[] longs = { }; + final LongList listOffsets = new LongArrayList(longs); new SemiExternalGammaBigList(buildInputStream(listOffsets), 1, listOffsets.size()); assertTrue(true); diff --git a/test/it/unimi/dsi/big/util/ShiftAddXorSignedStringMapTest.java b/test/it/unimi/dsi/big/util/ShiftAddXorSignedStringMapTest.java index f49e315..8d9c6a5 100644 --- a/test/it/unimi/dsi/big/util/ShiftAddXorSignedStringMapTest.java +++ b/test/it/unimi/dsi/big/util/ShiftAddXorSignedStringMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,12 +18,9 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.Size64; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; -import it.unimi.dsi.fastutil.objects.AbstractObjectBigList; -import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; import java.io.File; import java.io.IOException; @@ -33,6 +28,12 @@ import java.util.Arrays; import org.junit.Test; +import it.unimi.dsi.fastutil.Size64; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction; +import it.unimi.dsi.fastutil.objects.AbstractObjectBigList; +import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; + public class ShiftAddXorSignedStringMapTest { @SuppressWarnings("deprecation") @@ -40,18 +41,18 @@ public class ShiftAddXorSignedStringMapTest { public void testNumbers() throws IOException, ClassNotFoundException { for(int width = 16; width <= Long.SIZE; width += 8) { - String[] s = new String[1000]; - long[] v = new long[s.length]; + final String[] s = new String[1000]; + final long[] v = new long[s.length]; for(int i = s.length; i-- != 0;) s[(int)(v[i] = i)] = Integer.toString(i); // Test with mph - Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); + final Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); ShiftAddXorSignedStringMap map = new ShiftAddXorSignedStringMap(Arrays.asList(s).iterator(), mph, width); for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(Integer.toString(i))); for(int i = s.length + 100; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); BinIO.storeObject(map, temp); map = (ShiftAddXorSignedStringMap)BinIO.loadObject(temp); @@ -66,23 +67,23 @@ public class ShiftAddXorSignedStringMapTest { private static final long serialVersionUID = 1L; @Override - public long getLong(Object key) { + public long getLong(final Object key) { try { final long l = Long.parseLong((String)key); return l < 1L << 31 ? l : -1; } - catch(Exception e) { + catch(final Exception e) { return -1; } } @Override - public boolean containsKey(Object key) { + public boolean containsKey(final Object key) { try { final long l = Long.parseLong((String)key); return l < 1L << 31; } - catch(Exception e) { + catch(final Exception e) { return false; } } @@ -104,7 +105,7 @@ public class ShiftAddXorSignedStringMapTest { new ShiftAddXorSignedStringMap(new AbstractObjectBigList<String>() { @Override - public String get(long index) { + public String get(final long index) { return Long.toString(index); } diff --git a/test/it/unimi/dsi/big/util/TernaryIntervalSearchTreeTest.java b/test/it/unimi/dsi/big/util/TernaryIntervalSearchTreeTest.java index 826a7b0..383422e 100644 --- a/test/it/unimi/dsi/big/util/TernaryIntervalSearchTreeTest.java +++ b/test/it/unimi/dsi/big/util/TernaryIntervalSearchTreeTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.big.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.big.util; * */ +package it.unimi.dsi.big.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/AbstractBitVectorTest.java b/test/it/unimi/dsi/bits/AbstractBitVectorTest.java index 83b0040..ef750d1 100644 --- a/test/it/unimi/dsi/bits/AbstractBitVectorTest.java +++ b/test/it/unimi/dsi/bits/AbstractBitVectorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -34,12 +34,12 @@ public class AbstractBitVectorTest { private long length = 129; @Override - public boolean getBoolean(long index) { return index % 2 != 0; } + public boolean getBoolean(final long index) { return index % 2 != 0; } @Override public long length() { return length; } @Override - public MinimalAlternatingBitVector length(long newLength) { + public MinimalAlternatingBitVector length(final long newLength) { this.length = newLength; return this; } @@ -57,7 +57,7 @@ public class AbstractBitVectorTest { try { v.removeBoolean(0); } - catch(UnsupportedOperationException e) { + catch(final UnsupportedOperationException e) { ok = true; } @@ -67,7 +67,7 @@ public class AbstractBitVectorTest { try { v.set(0, 0); } - catch(UnsupportedOperationException e) { + catch(final UnsupportedOperationException e) { ok = true; } @@ -77,7 +77,7 @@ public class AbstractBitVectorTest { try { v.add(0, 0); } - catch(UnsupportedOperationException e) { + catch(final UnsupportedOperationException e) { ok = true; } @@ -89,7 +89,7 @@ public class AbstractBitVectorTest { try { v.size(); } - catch(IllegalStateException e) { + catch(final IllegalStateException e) { ok = true; } @@ -99,7 +99,7 @@ public class AbstractBitVectorTest { try { v.asLongBigList(1).size(); } - catch(IllegalStateException e) { + catch(final IllegalStateException e) { ok = true; } @@ -119,7 +119,7 @@ public class AbstractBitVectorTest { @Test public void testCount() { - MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); + final MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); assertEquals(v.length() / 2, v.count()); } @@ -135,7 +135,7 @@ public class AbstractBitVectorTest { @Test public void testCompareTo() { - MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); + final MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); LongArrayBitVector w = LongArrayBitVector.copy(v); assertEquals(0, w.compareTo(v)); assertEquals(0, v.compareTo(w)); @@ -152,7 +152,7 @@ public class AbstractBitVectorTest { @Test public void testSize64() { - MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); + final MinimalAlternatingBitVector v = new MinimalAlternatingBitVector(); v.length(1L << 32); assertEquals(1L << 32, v.size64()); assertEquals(1L << 31, ((Size64)v.asLongSet()).size64()); diff --git a/test/it/unimi/dsi/bits/BitVectorTestCase.java b/test/it/unimi/dsi/bits/BitVectorTestCase.java index 48c4770..27d7d7b 100644 --- a/test/it/unimi/dsi/bits/BitVectorTestCase.java +++ b/test/it/unimi/dsi/bits/BitVectorTestCase.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; @@ -219,7 +219,7 @@ public class BitVectorTestCase { v.clear(); int[] bits = { 0,0,0,0,1,1,1,0,0,0,0,1,1,0,0 }; - for(int i = 0; i < bits.length; i++) v.add(bits[i]); + for (final int bit : bits) v.add(bit); LongArrayBitVector c = LongArrayBitVector.getInstance(); for(int i = 5; i < bits.length; i++) c.add(bits[i]); @@ -229,7 +229,7 @@ public class BitVectorTestCase { v.clear(); bits = new int[] { 0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,1,0,0,0,0,1,1,0,0 }; - for(int i = 0; i < bits.length; i++) v.add(bits[i]); + for (final int bit : bits) v.add(bit); c = LongArrayBitVector.getInstance(); for(int i = 5; i < bits.length - 2; i++) c.add(bits[i]); @@ -237,9 +237,9 @@ public class BitVectorTestCase { assertEquals(v, v.copy()); - long[] words = new long[] { 0xDEADBEEFDEADF00DL, 0xDEADBEEFDEADF00DL, 0xDEADBEEFDEADF00DL, }; - long[] copyWords16 = new long[] { 0xF00DDEADBEEFDEADL, 0xF00DDEADBEEFDEADL, 0xBEEFDEADL }; - long[] copyWords32 = new long[] { 0xDEADF00DDEADBEEFL, 0xDEADF00DDEADBEEFL }; + final long[] words = new long[] { 0xDEADBEEFDEADF00DL, 0xDEADBEEFDEADF00DL, 0xDEADBEEFDEADF00DL, }; + final long[] copyWords16 = new long[] { 0xF00DDEADBEEFDEADL, 0xF00DDEADBEEFDEADL, 0xBEEFDEADL }; + final long[] copyWords32 = new long[] { 0xDEADF00DDEADBEEFL, 0xDEADF00DDEADBEEFL }; LongArrayBitVector.wrap(copyWords16, 64 * 2 + 32).equals(LongArrayBitVector.wrap(words, 64 * 3).copy(16, 16 + 64 * 2 + 32)); assertEquals(LongArrayBitVector.wrap(copyWords16, 64 * 2 + 32), LongArrayBitVector.wrap(words, 64 * 3).copy(16, 16 + 64 * 2 + 32)); @@ -264,13 +264,13 @@ public class BitVectorTestCase { assertEquals(LongArrayBitVector.wrap(copyWords32, 64 * 1 + 32 + 1), LongArrayBitVector.wrap(words, 64 * 3).copy(32, 32 + 64 + 32 + 1)); } - public static void testBits(BitVector b) { + public static void testBits(final BitVector b) { for(int i = 0; i < 100; i++) b.add(i % 2); assertTrue(LongArrayBitVector.wrap(b.bits(), b.length()).toString(), Arrays.equals(new long[] { 0xAAAAAAAAAAAAAAAAL, 0x0000000AAAAAAAAAL }, b.bits())); } - public static void testLongBigListView(BitVector b) { - LongBigList list = b.asLongBigList(10); + public static void testLongBigListView(final BitVector b) { + final LongBigList list = b.asLongBigList(10); for(int i = 0; i < 100; i++) list.add(i); for(int i = 0; i < 100; i++) assertEquals(i, list.getLong(i)); @@ -289,7 +289,7 @@ public class BitVectorTestCase { list.size(100); int k = 0; - LongBigListIterator i = list.listIterator(); + final LongBigListIterator i = list.listIterator(); while(i.hasNext()) { assertEquals(k, i.nextIndex()); assertEquals(++k, i.nextLong()); @@ -300,8 +300,8 @@ public class BitVectorTestCase { } } - public static void testLongSetView(BitVector b) { - LongSortedSet s = b.asLongSet(); + public static void testLongSetView(final BitVector b) { + final LongSortedSet s = b.asLongSet(); assertNull(s.comparator()); for(int i = 0; i < 100; i++) s.add(i * 2); @@ -352,7 +352,7 @@ public class BitVectorTestCase { } - public static void testFirstLastPrefix(BitVector b) { + public static void testFirstLastPrefix(final BitVector b) { b.clear(); b.length(60); assertEquals(-1, b.firstOne()); @@ -484,10 +484,10 @@ public class BitVectorTestCase { assertTrue(c.getBoolean(0)); } - public static void testLogicOperators(BitVector b) { + public static void testLogicOperators(final BitVector b) { b.clear(); b.length(100); - BitVector c = b.copy(); + final BitVector c = b.copy(); for(int i = 0; i < 50; i++) b.set(2 * i); for(int i = 0; i < 50; i++) c.set(2 * i + 1); BitVector r; @@ -511,14 +511,14 @@ public class BitVectorTestCase { for(int i = 0; i < 100; i++) assertFalse(r.getBoolean(i)); } - public static void testCount(BitVector b) { + public static void testCount(final BitVector b) { b.clear(); b.length(100); for(int i = 0; i < 50; i++) b.set(i * 2); assertEquals(50, b.count()); } - public static void testSerialisation(BitVector b) throws IOException, ClassNotFoundException { + public static void testSerialisation(final BitVector b) throws IOException, ClassNotFoundException { final File file = File.createTempFile(BitVectorTestCase.class.getSimpleName(), "test"); file.deleteOnExit(); @@ -538,8 +538,8 @@ public class BitVectorTestCase { assertEquals(b, BinIO.loadObject(file)); } - public static void testReplace(BitVector b) { - Random r = new SplitMix64Random(1); + public static void testReplace(final BitVector b) { + final Random r = new SplitMix64Random(1); LongArrayBitVector bv = LongArrayBitVector.getInstance(200); for(int i = 0; i < 100; i++) bv.add(r.nextBoolean()); assertEquals(b.replace(bv), bv); @@ -552,16 +552,16 @@ public class BitVectorTestCase { } - public static void testAppend(BitVector b) { + public static void testAppend(final BitVector b) { b.clear(); - LongArrayBitVector v = LongArrayBitVector.ofLength(200); + final LongArrayBitVector v = LongArrayBitVector.ofLength(200); for(int i = 0; i < 60; i++) v.set(i * 3); b.append(v); assertEquals(b, v); b.clear(); b.add(true); b.append(v); - LongArrayBitVector w = LongArrayBitVector.ofLength(201); + final LongArrayBitVector w = LongArrayBitVector.ofLength(201); for(int i = 0; i < 60; i++) w.set(i * 3 + 1); w.set(0); assertEquals(w, b); diff --git a/test/it/unimi/dsi/bits/BitVectorsTest.java b/test/it/unimi/dsi/bits/BitVectorsTest.java index cf4c33e..8cae2bc 100644 --- a/test/it/unimi/dsi/bits/BitVectorsTest.java +++ b/test/it/unimi/dsi/bits/BitVectorsTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,11 +18,10 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; -import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; -import it.unimi.dsi.io.OfflineIterable; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -34,6 +31,10 @@ import java.util.Iterator; import org.junit.Test; +import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; +import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; +import it.unimi.dsi.io.OfflineIterable; + public class BitVectorsTest { @Test @@ -47,14 +48,14 @@ public class BitVectorsTest { LongArrayBitVector.wrap(new long[] { 0xAAAAAAAAAAAAAAAAL, 0xAAAAAAAAAAAAAAAAL }, 128), LongArrayBitVector.wrap(new long[] { 0xAAAAAAAAAAAAAAAAL, 0xAAAAAAAAAAAAAAAL }, 124) }; - for(BitVector bv: a) { + for(final BitVector bv: a) { BitVectors.writeFast(bv, dos); dos.close(); assertEquals(bv, BitVectors.readFast(new DataInputStream(new FastByteArrayInputStream(fbaos.array)))); fbaos.reset(); } - for(BitVector bv: a) { + for(final BitVector bv: a) { BitVectors.writeFast(bv, dos); dos.close(); assertEquals(bv, BitVectors.readFast(new DataInputStream(new FastByteArrayInputStream(fbaos.array)), labv)); @@ -70,11 +71,11 @@ public class BitVectorsTest { LongArrayBitVector.wrap(new long[] { 0xAAAAAAAAAAAAAAAAL, 0xAAAAAAAAAAAAAAAAL }, 128), LongArrayBitVector.wrap(new long[] { 0xAAAAAAAAAAAAAAAAL, 0xAAAAAAAAAAAAAAAL }, 124) }; - OfflineIterable<BitVector,LongArrayBitVector> iterable = new OfflineIterable<>(BitVectors.OFFLINE_SERIALIZER, LongArrayBitVector.getInstance()); + final OfflineIterable<BitVector,LongArrayBitVector> iterable = new OfflineIterable<>(BitVectors.OFFLINE_SERIALIZER, LongArrayBitVector.getInstance()); iterable.addAll(Arrays.asList(a)); - Iterator<LongArrayBitVector> iterator = iterable.iterator(); - for(int i = 0; i < a.length; i++) assertEquals(a[i], iterator.next()); + final Iterator<LongArrayBitVector> iterator = iterable.iterator(); + for (final BitVector element : a) assertEquals(element, iterator.next()); assertFalse(iterator.hasNext()); iterable.close(); } diff --git a/test/it/unimi/dsi/bits/BooleanListBitVectorTest.java b/test/it/unimi/dsi/bits/BooleanListBitVectorTest.java index 88341dd..2b32dc4 100644 --- a/test/it/unimi/dsi/bits/BooleanListBitVectorTest.java +++ b/test/it/unimi/dsi/bits/BooleanListBitVectorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -31,7 +31,7 @@ public class BooleanListBitVectorTest { @Test public void testSetClearFlip() { - BooleanListBitVector v = BooleanListBitVector.getInstance(); + final BooleanListBitVector v = BooleanListBitVector.getInstance(); v.size(1); BitVectorTestCase.testSetClearFlip(v); v.size(64); @@ -47,7 +47,7 @@ public class BooleanListBitVectorTest { @Test public void testFillFlip() { - BooleanListBitVector v = BooleanListBitVector.getInstance(); + final BooleanListBitVector v = BooleanListBitVector.getInstance(); v.size(100); BitVectorTestCase.testFillFlip(v); BitVectorTestCase.testFillFlip(v.subVector(0, 90)); @@ -71,7 +71,7 @@ public class BooleanListBitVectorTest { @Test public void testEquals2() { - BooleanListBitVector v = BooleanListBitVector.getInstance(); + final BooleanListBitVector v = BooleanListBitVector.getInstance(); v.clear(); v.size(100); v.fill(5, 80, true); diff --git a/test/it/unimi/dsi/bits/ByteArrayTransformationStrategyTest.java b/test/it/unimi/dsi/bits/ByteArrayTransformationStrategyTest.java index 4c53870..fd73055 100644 --- a/test/it/unimi/dsi/bits/ByteArrayTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/ByteArrayTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/FastTest.java b/test/it/unimi/dsi/bits/FastTest.java index 1fa8c18..bfa243d 100644 --- a/test/it/unimi/dsi/bits/FastTest.java +++ b/test/it/unimi/dsi/bits/FastTest.java @@ -1,10 +1,3 @@ -package it.unimi.dsi.bits; - -import static org.junit.Assert.assertEquals; -import it.unimi.dsi.util.SplitMix64RandomGenerator; - -import org.junit.Test; - /* * DSI utilities * @@ -25,6 +18,14 @@ import org.junit.Test; * */ +package it.unimi.dsi.bits; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; + +import it.unimi.dsi.util.SplitMix64RandomGenerator; + public class FastTest { @Test @@ -68,7 +69,7 @@ public class FastTest { assertEquals(0, Fast.select(1, 0)); for(int i = 0; i < 64; i++) assertEquals(i, Fast.select(0xFFFFFFFFFFFFFFFFL, i)); for(int i = 1; i < 32; i++) assertEquals(2 * i + 1, Fast.select(0xAAAAAAAAAAAAAAAAL, i)); - SplitMix64RandomGenerator r = new SplitMix64RandomGenerator(0); + final SplitMix64RandomGenerator r = new SplitMix64RandomGenerator(0); for(int i = 100000; i-- != 0;) { final long x = r.nextLong(); final int count = Long.bitCount(x); diff --git a/test/it/unimi/dsi/bits/FixedLongTransformationStrategyTest.java b/test/it/unimi/dsi/bits/FixedLongTransformationStrategyTest.java index 60bb962..c9f01ad 100644 --- a/test/it/unimi/dsi/bits/FixedLongTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/FixedLongTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -39,7 +39,7 @@ public class FixedLongTransformationStrategyTest { @Test public void testGetLong() { final TransformationStrategy<Long> fixedLong = TransformationStrategies.fixedLong(); - BitVector p = fixedLong.toBitVector(Long.valueOf(Long.reverse(0xDEADBEEFDEADF00DL))); + final BitVector p = fixedLong.toBitVector(Long.valueOf(Long.reverse(0xDEADBEEFDEADF00DL))); for(int from = Long.SIZE; from-- != 0;) for(int to = Long.SIZE; from < to--;) assertTrue(p.getLong(from, to) == LongArrayBitVector.wrap(new long[] { 0xDEADBEEFDEADF00DL }).getLong(from, to)); diff --git a/test/it/unimi/dsi/bits/IsoTransformationStrategyTest.java b/test/it/unimi/dsi/bits/IsoTransformationStrategyTest.java index 980d36d..a70497d 100644 --- a/test/it/unimi/dsi/bits/IsoTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/IsoTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,13 +18,16 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.lang.MutableString; import org.junit.Test; +import it.unimi.dsi.lang.MutableString; + public class IsoTransformationStrategyTest { @Test diff --git a/test/it/unimi/dsi/bits/LongArrayBitVectorTest.java b/test/it/unimi/dsi/bits/LongArrayBitVectorTest.java index c1e884e..bd51643 100644 --- a/test/it/unimi/dsi/bits/LongArrayBitVectorTest.java +++ b/test/it/unimi/dsi/bits/LongArrayBitVectorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/LongBigArrayBitVectorTest.java b/test/it/unimi/dsi/bits/LongBigArrayBitVectorTest.java index 76b889e..1508fd6 100644 --- a/test/it/unimi/dsi/bits/LongBigArrayBitVectorTest.java +++ b/test/it/unimi/dsi/bits/LongBigArrayBitVectorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/PrefixFreeTransformationStrategyTest.java b/test/it/unimi/dsi/bits/PrefixFreeTransformationStrategyTest.java index a4741d5..83ae1b0 100644 --- a/test/it/unimi/dsi/bits/PrefixFreeTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/PrefixFreeTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -30,9 +30,9 @@ public class PrefixFreeTransformationStrategyTest { @Test public void testGetBoolean() { - LongArrayBitVector v = LongArrayBitVector.of(0, 1, 0); - TransformationStrategy<BitVector> prefixFree = TransformationStrategies.prefixFree(); - BitVector p = prefixFree.toBitVector(v); + final LongArrayBitVector v = LongArrayBitVector.of(0, 1, 0); + final TransformationStrategy<BitVector> prefixFree = TransformationStrategies.prefixFree(); + final BitVector p = prefixFree.toBitVector(v); assertTrue(p.getBoolean(0)); assertFalse(p.getBoolean(1)); assertTrue(p.getBoolean(2)); @@ -47,8 +47,8 @@ public class PrefixFreeTransformationStrategyTest { public void testGetLong() { LongArrayBitVector v = LongArrayBitVector.getInstance(); v.append(0xFFFFFFFFL, 32); - TransformationStrategy<BitVector> prefixFree = TransformationStrategies.prefixFree(); - BitVector p = prefixFree.toBitVector(v); + final TransformationStrategy<BitVector> prefixFree = TransformationStrategies.prefixFree(); + final BitVector p = prefixFree.toBitVector(v); assertEquals(0xFFFFFFFFFFFFFFFFL, p.getLong(0, 64)); assertFalse(p.getBoolean(64)); assertEquals(0, p.getLong(64, 64)); diff --git a/test/it/unimi/dsi/bits/RawByteArrayTransformationStrategyTest.java b/test/it/unimi/dsi/bits/RawByteArrayTransformationStrategyTest.java index d4e3afd..b4c14fa 100644 --- a/test/it/unimi/dsi/bits/RawByteArrayTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/RawByteArrayTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/RawFixedLongTransformationStrategyTest.java b/test/it/unimi/dsi/bits/RawFixedLongTransformationStrategyTest.java index 89d6358..511e161 100644 --- a/test/it/unimi/dsi/bits/RawFixedLongTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/RawFixedLongTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -39,7 +39,7 @@ public class RawFixedLongTransformationStrategyTest { @Test public void testGetLong() { final TransformationStrategy<Long> rawFixedLong = TransformationStrategies.rawFixedLong(); - BitVector p = rawFixedLong.toBitVector(Long.valueOf(0xDEADBEEFDEADF00DL)); + final BitVector p = rawFixedLong.toBitVector(Long.valueOf(0xDEADBEEFDEADF00DL)); for(int from = Long.SIZE; from-- != 0;) for(int to = Long.SIZE; from < to--;) assertTrue(p.getLong(from, to) == LongArrayBitVector.wrap(new long[] { 0xDEADBEEFDEADF00DL }).getLong(from, to)); diff --git a/test/it/unimi/dsi/bits/RawISOTransformationStrategyTest.java b/test/it/unimi/dsi/bits/RawISOTransformationStrategyTest.java index 5ce9e7b..728d623 100644 --- a/test/it/unimi/dsi/bits/RawISOTransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/RawISOTransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/bits/RawUtf16TransformationStrategyTest.java b/test/it/unimi/dsi/bits/RawUtf16TransformationStrategyTest.java index f0f4b5b..30c1dfe 100644 --- a/test/it/unimi/dsi/bits/RawUtf16TransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/RawUtf16TransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,13 +18,16 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.lang.MutableString; import org.junit.Test; +import it.unimi.dsi.lang.MutableString; + public class RawUtf16TransformationStrategyTest { @Test diff --git a/test/it/unimi/dsi/bits/RawUtf32TransformationStrategyTest.java b/test/it/unimi/dsi/bits/RawUtf32TransformationStrategyTest.java index 6c271e7..c272c3b 100644 --- a/test/it/unimi/dsi/bits/RawUtf32TransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/RawUtf32TransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import org.junit.Test; diff --git a/test/it/unimi/dsi/bits/Utf16TransformationStrategyTest.java b/test/it/unimi/dsi/bits/Utf16TransformationStrategyTest.java index 2f9c973..a608865 100644 --- a/test/it/unimi/dsi/bits/Utf16TransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/Utf16TransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,13 +18,16 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.lang.MutableString; import org.junit.Test; +import it.unimi.dsi.lang.MutableString; + public class Utf16TransformationStrategyTest { @Test diff --git a/test/it/unimi/dsi/bits/Utf32TransformationStrategyTest.java b/test/it/unimi/dsi/bits/Utf32TransformationStrategyTest.java index 94d866b..e8b64c1 100644 --- a/test/it/unimi/dsi/bits/Utf32TransformationStrategyTest.java +++ b/test/it/unimi/dsi/bits/Utf32TransformationStrategyTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.bits; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.bits; * */ +package it.unimi.dsi.bits; + import static org.junit.Assert.assertEquals; import org.junit.Test; diff --git a/test/it/unimi/dsi/compression/CodecTestCase.java b/test/it/unimi/dsi/compression/CodecTestCase.java index ffc7768..5b54697 100644 --- a/test/it/unimi/dsi/compression/CodecTestCase.java +++ b/test/it/unimi/dsi/compression/CodecTestCase.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,7 +18,13 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.util.Random; + import it.unimi.dsi.bits.BitVector; import it.unimi.dsi.fastutil.booleans.BooleanArrayList; import it.unimi.dsi.fastutil.booleans.BooleanIterator; @@ -28,38 +32,36 @@ import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; import it.unimi.dsi.io.InputBitStream; import it.unimi.dsi.io.OutputBitStream; -import java.io.IOException; -import java.util.Random; - public abstract class CodecTestCase { - protected static void checkPrefixCodec(PrefixCodec codec, Random r) throws IOException { - int[] symbol = new int[100]; - BooleanArrayList bits = new BooleanArrayList(); + protected static void checkPrefixCodec(final PrefixCodec codec, final Random r) throws IOException { + final int[] symbol = new int[100]; + final BooleanArrayList bits = new BooleanArrayList(); for(int i = 0; i < symbol.length; i++) symbol[i] = r.nextInt(codec.size()); - for(int i = 0; i < symbol.length; i++) { - BitVector word = codec.codeWords()[symbol[i]]; + for (final int element : symbol) { + final BitVector word = codec.codeWords()[element]; for(long j = 0; j < word.length(); j++) bits.add(word.getBoolean(j)); } - BooleanIterator booleanIterator = bits.iterator(); - Decoder decoder = codec.decoder(); - for(int i = 0; i < symbol.length; i++) { - assertEquals(symbol[i], decoder.decode(booleanIterator)); + final BooleanIterator booleanIterator = bits.iterator(); + final Decoder decoder = codec.decoder(); + for (final int element : symbol) { + assertEquals(element, decoder.decode(booleanIterator)); } - FastByteArrayOutputStream fbaos = new FastByteArrayOutputStream(); + final FastByteArrayOutputStream fbaos = new FastByteArrayOutputStream(); @SuppressWarnings("resource") + final OutputBitStream obs = new OutputBitStream(fbaos, 0); obs.write(bits.iterator()); obs.flush(); - InputBitStream ibs = new InputBitStream(fbaos.array); + final InputBitStream ibs = new InputBitStream(fbaos.array); - for(int i = 0; i < symbol.length; i++) { - assertEquals(symbol[i], decoder.decode(ibs)); + for (final int element : symbol) { + assertEquals(element, decoder.decode(ibs)); } } - protected void checkLengths(int[] frequency, int[] codeLength, BitVector[] codeWord) { + protected void checkLengths(final int[] frequency, final int[] codeLength, final BitVector[] codeWord) { for(int i = 0; i < frequency.length; i++) assertEquals(Integer.toString(i), codeLength[i], codeWord[i].length()); } diff --git a/test/it/unimi/dsi/compression/HuTuckerCodecTest.java b/test/it/unimi/dsi/compression/HuTuckerCodecTest.java index 288a725..f0fe928 100644 --- a/test/it/unimi/dsi/compression/HuTuckerCodecTest.java +++ b/test/it/unimi/dsi/compression/HuTuckerCodecTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + import static org.junit.Assert.assertEquals; import java.io.IOException; diff --git a/test/it/unimi/dsi/compression/HuffmanCodecTest.java b/test/it/unimi/dsi/compression/HuffmanCodecTest.java index 33fd86c..89b78bb 100644 --- a/test/it/unimi/dsi/compression/HuffmanCodecTest.java +++ b/test/it/unimi/dsi/compression/HuffmanCodecTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.compression; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.compression; * */ +package it.unimi.dsi.compression; + import static org.junit.Assert.assertEquals; import java.io.IOException; diff --git a/test/it/unimi/dsi/io/ByteBufferInputStreamTest.java b/test/it/unimi/dsi/io/ByteBufferInputStreamTest.java index ebb8af4..228a38c 100644 --- a/test/it/unimi/dsi/io/ByteBufferInputStreamTest.java +++ b/test/it/unimi/dsi/io/ByteBufferInputStreamTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,8 +18,9 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.util.SplitMix64Random; import java.io.File; import java.io.FileInputStream; @@ -34,6 +33,8 @@ import java.util.Random; import org.junit.Test; +import it.unimi.dsi.util.SplitMix64Random; + /** Note: this test has little meaning unless you change ByteBufferInputStream.FIRST_SHIFT to 16. */ @@ -44,12 +45,12 @@ public class ByteBufferInputStreamTest { @Test public void testStream() throws FileNotFoundException, IOException { - File f = File.createTempFile(ByteBufferInputStreamTest.class.getName(), "tmp"); + final File f = File.createTempFile(ByteBufferInputStreamTest.class.getName(), "tmp"); f.deleteOnExit(); final int l = 100000; - long seed = System.currentTimeMillis(); + final long seed = System.currentTimeMillis(); if (DEBUG) System.err.println("Seed: " + seed); - Random random = new SplitMix64Random(seed); + final Random random = new SplitMix64Random(seed); for(int n = 1; n < 8; n++) { final FileOutputStream fos = new FileOutputStream(f); @@ -63,8 +64,8 @@ public class ByteBufferInputStreamTest { FileInputStream test = new FileInputStream(f); FileChannel fc = test.getChannel(); int a1, a2, off, len, pos; - byte b1[] = new byte[32768]; - byte b2[] = new byte[32768]; + final byte b1[] = new byte[32768]; + final byte b2[] = new byte[32768]; for(int k = 0; k < l / 10; k++) { diff --git a/test/it/unimi/dsi/io/ByteDiskQueueTest.java b/test/it/unimi/dsi/io/ByteDiskQueueTest.java index 1493305..99a1d05 100644 --- a/test/it/unimi/dsi/io/ByteDiskQueueTest.java +++ b/test/it/unimi/dsi/io/ByteDiskQueueTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * Copyright (C) 2014-2020 Sebastiano Vigna * @@ -18,10 +16,10 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.bytes.ByteArrayList; -import it.unimi.dsi.util.SplitMix64Random; import java.io.File; import java.io.IOException; @@ -30,6 +28,9 @@ import java.util.ArrayList; import org.junit.Ignore; import org.junit.Test; +import it.unimi.dsi.fastutil.bytes.ByteArrayList; +import it.unimi.dsi.util.SplitMix64Random; + public class ByteDiskQueueTest { @@ -45,9 +46,9 @@ public class ByteDiskQueueTest { @Test public void testSomeEnqueueDequeue() throws IOException { - File queue = File.createTempFile(this.getClass().getName(), ".queue"); + final File queue = File.createTempFile(this.getClass().getName(), ".queue"); queue.deleteOnExit(); - ByteDiskQueue q = ByteDiskQueue.createNew(queue, 128, true); + final ByteDiskQueue q = ByteDiskQueue.createNew(queue, 128, true); for(int s = 1; s < 1 << 12; s *= 2) { q.clear(); for(int i = 0; i < s; i++) q.enqueue((byte)(i + 64)); @@ -58,12 +59,12 @@ public class ByteDiskQueueTest { @Test public void testSomeEnqueueIntDequeueInt() throws IOException { - File queue = File.createTempFile(this.getClass().getName(), ".queue"); + final File queue = File.createTempFile(this.getClass().getName(), ".queue"); queue.deleteOnExit(); - ByteDiskQueue q = ByteDiskQueue.createNew(queue, 128, true); + final ByteDiskQueue q = ByteDiskQueue.createNew(queue, 128, true); for(int s = 1; s < 1 << 20; s *= 2) { q.clear(); - SplitMix64Random random = new SplitMix64Random(0); + final SplitMix64Random random = new SplitMix64Random(0); for(int i = 0; i < s; i++) { q.enqueueInt(random.nextInt() & -1 >>> 1); q.enqueueInt(random.nextInt() & -1 >>> 16); @@ -83,9 +84,9 @@ public class ByteDiskQueueTest { final File queue = File.createTempFile(this.getClass().getName(), ".queue"); queue.deleteOnExit(); final ByteDiskQueue q = ByteDiskQueue.createNew(queue, 128, true); - byte[] a = new byte[] { 1 }; + final byte[] a = new byte[] { 1 }; q.enqueue(a); - byte [] b = new byte[1]; + final byte [] b = new byte[1]; q.dequeue(b); assertArrayEquals(a, b); q.close(); @@ -93,17 +94,17 @@ public class ByteDiskQueueTest { @Test public void testSomeArrayEnqueueDequeue() throws IOException { - File queue = File.createTempFile(this.getClass().getName(), ".queue"); + final File queue = File.createTempFile(this.getClass().getName(), ".queue"); queue.deleteOnExit(); for(int bufferSize = 8; bufferSize < 256; bufferSize *=2) { - ByteDiskQueue q = ByteDiskQueue.createNew(queue, bufferSize, true); + final ByteDiskQueue q = ByteDiskQueue.createNew(queue, bufferSize, true); for(int s = 1; s < 1 << 13; s *= 2) { q.clear(); - SplitMix64Random random = new SplitMix64Random(0); - ArrayList<byte[]> arrays = new ArrayList<>(); + final SplitMix64Random random = new SplitMix64Random(0); + final ArrayList<byte[]> arrays = new ArrayList<>(); for(int i = 0; i < s; i++) { - byte[] a = new byte[random.nextInt(3 * bufferSize / 2)]; + final byte[] a = new byte[random.nextInt(3 * bufferSize / 2)]; for(int j = a.length; j-- != 0;) a[j] = (byte)j; arrays.add(a); } @@ -160,7 +161,7 @@ public class ByteDiskQueueTest { else { final byte[] a = new byte[(int)Math.min(q.size64(), random.nextInt(256))]; q.dequeue(a); - for(int i = 0; i < a.length; i++) assertEquals(a[i], l.removeByte(0)); + for (final byte element : a) assertEquals(element, l.removeByte(0)); } break; case 3: diff --git a/test/it/unimi/dsi/io/DelimitedWordReaderTest.java b/test/it/unimi/dsi/io/DelimitedWordReaderTest.java index 51d5034..cc672ff 100644 --- a/test/it/unimi/dsi/io/DelimitedWordReaderTest.java +++ b/test/it/unimi/dsi/io/DelimitedWordReaderTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; import org.junit.Test; @@ -29,7 +29,7 @@ public class DelimitedWordReaderTest { @Test public void testToSpec() { - String className = DelimitedWordReader.class.getName(); + final String className = DelimitedWordReader.class.getName(); assertEquals(className + "(\"_\")", new DelimitedWordReader("_").toSpec()); assertEquals(className + "(100,\"_\")", new DelimitedWordReader("100", "_").toSpec()); } diff --git a/test/it/unimi/dsi/io/FastBufferedReaderTest.java b/test/it/unimi/dsi/io/FastBufferedReaderTest.java index 603979b..3de80e0 100644 --- a/test/it/unimi/dsi/io/FastBufferedReaderTest.java +++ b/test/it/unimi/dsi/io/FastBufferedReaderTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,10 +18,10 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.io.FastBufferedOutputStream; -import it.unimi.dsi.lang.MutableString; import java.io.BufferedReader; import java.io.File; @@ -34,12 +32,15 @@ import java.io.StringReader; import org.junit.Test; +import it.unimi.dsi.fastutil.io.FastBufferedOutputStream; +import it.unimi.dsi.lang.MutableString; + @SuppressWarnings("resource") public class FastBufferedReaderTest { @Test public void testToSpec() { - String className = FastBufferedReader.class.getName(); + final String className = FastBufferedReader.class.getName(); assertEquals(className, new FastBufferedReader().toSpec()); assertEquals(className + "(100)", new FastBufferedReader(100).toSpec()); assertEquals(className + "(\"_\")", new FastBufferedReader("_").toSpec()); @@ -48,8 +49,8 @@ public class FastBufferedReaderTest { @Test public void testBufferZero() throws IOException { - String string = "test\ntest\n"; - FastBufferedReader fbr = new FastBufferedReader(1); + final String string = "test\ntest\n"; + final FastBufferedReader fbr = new FastBufferedReader(1); fbr.setReader(new StringReader(string)); assertEquals(new MutableString("test"), fbr.readLine(new MutableString())); assertEquals('t', fbr.read()); @@ -61,18 +62,19 @@ public class FastBufferedReaderTest { @Test public void testRandom() throws IOException { - File file = File.createTempFile(FastBufferedReaderTest.class.getSimpleName(), "tmp"); + final File file = File.createTempFile(FastBufferedReaderTest.class.getSimpleName(), "tmp"); String s; file.deleteOnExit(); - MutableString ms = new MutableString(), ms2; - int l = (int)file.length(); - FastBufferedReader br = new FastBufferedReader(new FileReader(file), 2); - BufferedReader test = new BufferedReader(new FileReader(file)); + final MutableString ms = new MutableString(); + MutableString ms2; + final int l = (int)file.length(); + final FastBufferedReader br = new FastBufferedReader(new FileReader(file), 2); + final BufferedReader test = new BufferedReader(new FileReader(file)); int a1, a2, off, len, pos; - java.util.Random r = new java.util.Random(0); + final java.util.Random r = new java.util.Random(0); // Create temp file - FastBufferedOutputStream fos = new FastBufferedOutputStream(new FileOutputStream(file)); + final FastBufferedOutputStream fos = new FastBufferedOutputStream(new FileOutputStream(file)); for(int i = 1000000; i-- !=0;) { final int c = r.nextInt(100); if (c <= 1) { @@ -83,8 +85,8 @@ public class FastBufferedReaderTest { } fos.close(); - char b1[] = new char[32768]; - char b2[] = new char[32768]; + final char b1[] = new char[32768]; + final char b2[] = new char[32768]; for(int t = 1000000; t-- != 0;) { diff --git a/test/it/unimi/dsi/io/FileLinesByteArrayCollectionTest.java b/test/it/unimi/dsi/io/FileLinesByteArrayCollectionTest.java index 6cf655b..b6caf47 100644 --- a/test/it/unimi/dsi/io/FileLinesByteArrayCollectionTest.java +++ b/test/it/unimi/dsi/io/FileLinesByteArrayCollectionTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,9 +18,12 @@ package it.unimi.dsi.io; * */ -import it.unimi.dsi.big.io.FileLinesByteArrayCollection; -import it.unimi.dsi.big.io.FileLinesByteArrayCollection.FileLinesIterator; -import it.unimi.dsi.fastutil.io.BinIO; +package it.unimi.dsi.io; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import java.io.File; import java.io.IOException; @@ -30,13 +31,15 @@ import java.util.Arrays; import org.junit.Test; -import static org.junit.Assert.*; +import it.unimi.dsi.big.io.FileLinesByteArrayCollection; +import it.unimi.dsi.big.io.FileLinesByteArrayCollection.FileLinesIterator; +import it.unimi.dsi.fastutil.io.BinIO; public class FileLinesByteArrayCollectionTest { @Test public void test() throws IOException { - File file = File.createTempFile(FastBufferedReaderTest.class.getSimpleName(), "tmp"); + final File file = File.createTempFile(FastBufferedReaderTest.class.getSimpleName(), "tmp"); file.deleteOnExit(); byte[] a = { '0', '\n', '1', '\n' }; diff --git a/test/it/unimi/dsi/io/InputBitStreamTest.java b/test/it/unimi/dsi/io/InputBitStreamTest.java index 464bf81..76b9d96 100644 --- a/test/it/unimi/dsi/io/InputBitStreamTest.java +++ b/test/it/unimi/dsi/io/InputBitStreamTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/io/OfflineIterableTest.java b/test/it/unimi/dsi/io/OfflineIterableTest.java index e6c0662..6bb4694 100644 --- a/test/it/unimi/dsi/io/OfflineIterableTest.java +++ b/test/it/unimi/dsi/io/OfflineIterableTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,11 +18,10 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -import it.unimi.dsi.fastutil.objects.ObjectIterator; -import it.unimi.dsi.fastutil.objects.ObjectIterators; -import it.unimi.dsi.lang.MutableString; import java.io.DataInput; import java.io.DataOutput; @@ -34,32 +31,36 @@ import java.io.OutputStream; import org.junit.Test; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import it.unimi.dsi.fastutil.objects.ObjectIterators; +import it.unimi.dsi.lang.MutableString; + public class OfflineIterableTest { - public void doIt(String[] strings) throws IOException { - OfflineIterable.Serializer<MutableString,MutableString> stringSerializer = new OfflineIterable.Serializer<MutableString,MutableString>() { + public void doIt(final String[] strings) throws IOException { + final OfflineIterable.Serializer<MutableString,MutableString> stringSerializer = new OfflineIterable.Serializer<MutableString,MutableString>() { @Override - public void read(DataInput dis, MutableString x) throws IOException { + public void read(final DataInput dis, final MutableString x) throws IOException { x.readSelfDelimUTF8((InputStream)dis); } @Override - public void write(MutableString x, DataOutput dos) throws IOException { + public void write(final MutableString x, final DataOutput dos) throws IOException { x.writeSelfDelimUTF8((OutputStream)dos); } }; - OfflineIterable<MutableString,MutableString> stringIterable = new OfflineIterable<>(stringSerializer, new MutableString()); - for (String s: strings) + final OfflineIterable<MutableString,MutableString> stringIterable = new OfflineIterable<>(stringSerializer, new MutableString()); + for (final String s: strings) stringIterable.add(new MutableString(s)); ObjectIterator<String> shouldBe = ObjectIterators.wrap(strings); - for (MutableString m: stringIterable) + for (final MutableString m: stringIterable) assertEquals(new MutableString(shouldBe.next()), m); assertFalse(shouldBe.hasNext()); // Let's do it again. stringIterable.clear(); - for (String s: strings) + for (final String s: strings) stringIterable.add(new MutableString(s)); shouldBe = ObjectIterators.wrap(strings); - for (MutableString m: stringIterable) + for (final MutableString m: stringIterable) assertEquals(new MutableString(shouldBe.next()), m); assertFalse(shouldBe.hasNext()); diff --git a/test/it/unimi/dsi/io/OutputBitStreamTest.java b/test/it/unimi/dsi/io/OutputBitStreamTest.java index 6b47c5c..ee91b1d 100644 --- a/test/it/unimi/dsi/io/OutputBitStreamTest.java +++ b/test/it/unimi/dsi/io/OutputBitStreamTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,22 +18,25 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; -import it.unimi.dsi.util.SplitMix64Random; import java.io.IOException; import org.junit.Test; +import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; +import it.unimi.dsi.util.SplitMix64Random; + @SuppressWarnings("resource") public class OutputBitStreamTest { @Test public void testPositionWrapped() throws IOException { final byte[] a = new byte[2]; - OutputBitStream obs = new OutputBitStream(a); + final OutputBitStream obs = new OutputBitStream(a); obs.position(8); obs.writeInt(1, 8); assertArrayEquals(new byte[] { 0, 1 }, a); @@ -48,7 +49,7 @@ public class OutputBitStreamTest { @Test(expected=IllegalArgumentException.class) public void testPositionUnaligned() throws IOException { final byte[] a = new byte[2]; - OutputBitStream obs = new OutputBitStream(a); + final OutputBitStream obs = new OutputBitStream(a); obs.position(1); } diff --git a/test/it/unimi/dsi/io/SegmentedInputStreamTest.java b/test/it/unimi/dsi/io/SegmentedInputStreamTest.java index b84bc5f..5996b22 100644 --- a/test/it/unimi/dsi/io/SegmentedInputStreamTest.java +++ b/test/it/unimi/dsi/io/SegmentedInputStreamTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.io; - /* * DSI utilities * @@ -20,17 +18,20 @@ package it.unimi.dsi.io; * */ +package it.unimi.dsi.io; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; import java.io.IOException; import org.junit.Before; import org.junit.Test; +import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; + public class SegmentedInputStreamTest { - private FastByteArrayInputStream stream = new FastByteArrayInputStream( + private final FastByteArrayInputStream stream = new FastByteArrayInputStream( new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 } ); diff --git a/test/it/unimi/dsi/lang/EnumParserTest.java b/test/it/unimi/dsi/lang/EnumParserTest.java index aff6cc4..f9dca3e 100644 --- a/test/it/unimi/dsi/lang/EnumParserTest.java +++ b/test/it/unimi/dsi/lang/EnumParserTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import static org.junit.Assert.assertEquals; import org.junit.Test; @@ -31,11 +31,11 @@ public class EnumParserTest { A, b, C - }; + } @Test public void test() throws Exception { - EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); + final EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); assertEquals(TestEnum.A, enumStringParser.parse("A")); assertEquals(TestEnum.b, enumStringParser.parse("b")); assertEquals(TestEnum.C, enumStringParser.parse("C")); @@ -43,19 +43,19 @@ public class EnumParserTest { @Test(expected=ParseException.class) public void testNoMatchBecauseOfCase() throws Exception { - EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); + final EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); enumStringParser.parse("a"); } @Test(expected=ParseException.class) public void testNoMatchBecauseWrong() throws Exception { - EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); + final EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class); enumStringParser.parse("D"); } @Test public void testNorm() throws Exception { - EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class, true); + final EnumStringParser<TestEnum> enumStringParser = EnumStringParser.getParser(TestEnum.class, true); assertEquals(TestEnum.A, enumStringParser.parse("a")); assertEquals(TestEnum.C, enumStringParser.parse("c")); } diff --git a/test/it/unimi/dsi/lang/MutableStringTest.java b/test/it/unimi/dsi/lang/MutableStringTest.java index 7996abd..57cebe0 100644 --- a/test/it/unimi/dsi/lang/MutableStringTest.java +++ b/test/it/unimi/dsi/lang/MutableStringTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,20 +18,23 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertFalse; -import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; -import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; +import static org.junit.Assert.assertTrue; import java.io.IOException; import org.junit.Test; +import it.unimi.dsi.fastutil.io.FastByteArrayInputStream; +import it.unimi.dsi.fastutil.io.FastByteArrayOutputStream; + public class MutableStringTest { @Test public void testSqueezeSpace() { - MutableString s = new MutableString(new char[] { 32, 13, 10, 32, 32, 32, 13, 10, 32, 32, 32, 13, 10, 32, 32, 32, 32, 32 }); + final MutableString s = new MutableString(new char[] { 32, 13, 10, 32, 32, 32, 13, 10, 32, 32, 32, 13, 10, 32, 32, 32, 32, 32 }); assertEquals(new MutableString(" \r\n \r\n \r\n "), s.squeezeSpace()); assertEquals(new MutableString(" "), s.squeezeWhitespace()); @@ -41,8 +42,8 @@ public class MutableStringTest { @Test public void testSubsequence() { - MutableString s = new MutableString("abc"); - CharSequence ss = s.subSequence(1, 3); + final MutableString s = new MutableString("abc"); + final CharSequence ss = s.subSequence(1, 3); assertEquals(new MutableString("bc"), ss); assertEquals(1, ss.subSequence(1, 2).length()); } diff --git a/test/it/unimi/dsi/lang/ObjectParserTest.java b/test/it/unimi/dsi/lang/ObjectParserTest.java index d4459af..6ca144c 100644 --- a/test/it/unimi/dsi/lang/ObjectParserTest.java +++ b/test/it/unimi/dsi/lang/ObjectParserTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.lang; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.lang; * */ +package it.unimi.dsi.lang; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/lang/TwoStrings.java b/test/it/unimi/dsi/lang/TwoStrings.java index ced6070..357d023 100644 --- a/test/it/unimi/dsi/lang/TwoStrings.java +++ b/test/it/unimi/dsi/lang/TwoStrings.java @@ -1,7 +1,3 @@ -package it.unimi.dsi.lang; - -import java.util.Objects; - /* * DSI utilities * @@ -22,6 +18,10 @@ import java.util.Objects; * */ +package it.unimi.dsi.lang; + +import java.util.Objects; + public class TwoStrings { private final String a; private final String b; diff --git a/test/it/unimi/dsi/parser/BulletParserTest.java b/test/it/unimi/dsi/parser/BulletParserTest.java index 60d38a4..c12a894 100644 --- a/test/it/unimi/dsi/parser/BulletParserTest.java +++ b/test/it/unimi/dsi/parser/BulletParserTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.parser; * */ +package it.unimi.dsi.parser; + import static org.junit.Assert.assertEquals; import java.io.FileNotFoundException; diff --git a/test/it/unimi/dsi/parser/callback/BulletParserCallbackContentHandler.java b/test/it/unimi/dsi/parser/callback/BulletParserCallbackContentHandler.java index a40dde2..1cf5f94 100644 --- a/test/it/unimi/dsi/parser/callback/BulletParserCallbackContentHandler.java +++ b/test/it/unimi/dsi/parser/callback/BulletParserCallbackContentHandler.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,6 +18,13 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + +import java.util.Iterator; + +import org.xml.sax.Attributes; +import org.xml.sax.helpers.DefaultHandler; + import it.unimi.dsi.fastutil.objects.Reference2ObjectOpenHashMap; import it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet; import it.unimi.dsi.fastutil.objects.ReferenceSet; @@ -28,11 +33,6 @@ import it.unimi.dsi.parser.Attribute; import it.unimi.dsi.parser.BulletParser; import it.unimi.dsi.parser.Element; -import java.util.Iterator; - -import org.xml.sax.Attributes; -import org.xml.sax.helpers.DefaultHandler; - /** An adapter from callbacks of the bullet parser to standard * SAX content handler. Can be used to run, eg., <code>tagsoup</code> * and the bullet parser against a page and check that the @@ -68,7 +68,7 @@ public class BulletParserCallbackContentHandler extends DefaultHandler { @Override public void endElement(final String uri, final String localName, final String qName) { - Element element = parser.factory.getElement(new MutableString(localName)); + final Element element = parser.factory.getElement(new MutableString(localName)); if (cdataElements.contains(element) && element == inCdata) inCdata = null; callback.endElement(element); } @@ -95,14 +95,14 @@ public class BulletParserCallbackContentHandler extends DefaultHandler { String value; Attribute attribute; - for (Iterator<Attribute> i = parser.parsedAttributes.iterator(); i.hasNext();) { + for (final Iterator<Attribute> i = parser.parsedAttributes.iterator(); i.hasNext();) { attribute = i.next(); value = attributes.getValue(attribute.toString()); if (value != null) attrMap.put(attribute, new MutableString(value)); } - Element element = parser.factory.getElement(new MutableString(localName)); + final Element element = parser.factory.getElement(new MutableString(localName)); if (cdataElements.contains(element)) inCdata = element; callback.startElement(element, attrMap); } diff --git a/test/it/unimi/dsi/parser/callback/LinkExtractorTest.java b/test/it/unimi/dsi/parser/callback/LinkExtractorTest.java index 3672443..a8d626c 100644 --- a/test/it/unimi/dsi/parser/callback/LinkExtractorTest.java +++ b/test/it/unimi/dsi/parser/callback/LinkExtractorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,9 +18,9 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; -import it.unimi.dsi.parser.BulletParser; import java.io.IOException; @@ -31,14 +29,17 @@ import org.junit.Test; import com.google.common.base.Charsets; +import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; +import it.unimi.dsi.parser.BulletParser; + public class LinkExtractorTest { @Test public void testExtractor() throws IOException { - char[] text = IOUtils.toCharArray(this.getClass().getResourceAsStream("LinkExtractorTest.data"), Charsets.UTF_8); + final char[] text = IOUtils.toCharArray(this.getClass().getResourceAsStream("LinkExtractorTest.data"), Charsets.UTF_8); - BulletParser parser = new BulletParser(); - LinkExtractor linkExtractor = new LinkExtractor(); + final BulletParser parser = new BulletParser(); + final LinkExtractor linkExtractor = new LinkExtractor(); parser.setCallback(linkExtractor); parser.parse(text); diff --git a/test/it/unimi/dsi/parser/callback/TextExtractorTest.java b/test/it/unimi/dsi/parser/callback/TextExtractorTest.java index 14e742d..691c5d7 100644 --- a/test/it/unimi/dsi/parser/callback/TextExtractorTest.java +++ b/test/it/unimi/dsi/parser/callback/TextExtractorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.parser.callback; - /* * DSI utilities * @@ -20,18 +18,21 @@ package it.unimi.dsi.parser.callback; * */ +package it.unimi.dsi.parser.callback; + import static org.junit.Assert.assertTrue; -import it.unimi.dsi.parser.BulletParser; import org.junit.Test; +import it.unimi.dsi.parser.BulletParser; + public class TextExtractorTest { @Test public void testBRBreaksFlow() { - char a[] = "ciao<BR>mamma<BR>".toCharArray(); - BulletParser bulletParser = new BulletParser(); - TextExtractor textExtractor = new TextExtractor(); + final char a[] = "ciao<BR>mamma<BR>".toCharArray(); + final BulletParser bulletParser = new BulletParser(); + final TextExtractor textExtractor = new TextExtractor(); bulletParser.setCallback(textExtractor); bulletParser.parse(a); assertTrue(textExtractor.text.toString(), textExtractor.text.indexOf(' ') != -1); diff --git a/test/it/unimi/dsi/stat/JackknifeTest.java b/test/it/unimi/dsi/stat/JackknifeTest.java index 1811c03..d75bde4 100644 --- a/test/it/unimi/dsi/stat/JackknifeTest.java +++ b/test/it/unimi/dsi/stat/JackknifeTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.stat; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.stat; * */ +package it.unimi.dsi.stat; + import static org.junit.Assert.assertEquals; import java.util.ArrayList; @@ -30,12 +30,12 @@ import org.junit.Test; public class JackknifeTest { @Test public void test() { - ArrayList<double[]> samples = new ArrayList<>(); + final ArrayList<double[]> samples = new ArrayList<>(); samples.add(new double[] { 1 }); samples.add(new double[] { 2 }); samples.add(new double[] { 3 }); // Linear statistics must pass through the jackknife without bias. - Jackknife average = Jackknife.compute(samples, Jackknife.IDENTITY); + final Jackknife average = Jackknife.compute(samples, Jackknife.IDENTITY); assertEquals(2, average.estimate[0], 1E-30); assertEquals(Math.sqrt(((1 - 2) * (1 - 2) + (3 - 2) * (3 - 2)) / 6.), average.standardError[0], 1E-30); } diff --git a/test/it/unimi/dsi/stat/SummaryStatsTest.java b/test/it/unimi/dsi/stat/SummaryStatsTest.java index bc09fed..256c1c6 100644 --- a/test/it/unimi/dsi/stat/SummaryStatsTest.java +++ b/test/it/unimi/dsi/stat/SummaryStatsTest.java @@ -1,6 +1,3 @@ -package it.unimi.dsi.stat; - - /* * DSI utilities * @@ -21,6 +18,8 @@ package it.unimi.dsi.stat; * */ +package it.unimi.dsi.stat; + import static org.junit.Assert.assertEquals; import org.junit.Test; @@ -28,7 +27,7 @@ import org.junit.Test; public class SummaryStatsTest { @Test public void test() { - SummaryStats summaryStats = new SummaryStats(); + final SummaryStats summaryStats = new SummaryStats(); summaryStats.add(0); assertEquals(0, summaryStats.sum(), 0); assertEquals(0, summaryStats.mean(), 0); diff --git a/test/it/unimi/dsi/util/BloomFilterTest.java b/test/it/unimi/dsi/util/BloomFilterTest.java index 1e168e7..9a7a6d2 100644 --- a/test/it/unimi/dsi/util/BloomFilterTest.java +++ b/test/it/unimi/dsi/util/BloomFilterTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,11 +18,11 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.longs.LongOpenHashSet; -import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; import org.junit.Ignore; import org.junit.Test; @@ -33,11 +31,14 @@ import com.google.common.hash.Funnels; import com.google.common.primitives.Bytes; import com.google.common.primitives.Longs; +import it.unimi.dsi.fastutil.longs.LongOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; + public class BloomFilterTest { @Test public void testAdd() { - BloomFilter<Void> bloomFilter = BloomFilter.create(10, 20); // High precision + final BloomFilter<Void> bloomFilter = BloomFilter.create(10, 20); // High precision assertTrue(bloomFilter.add("test")); assertFalse(bloomFilter.add("test")); assertTrue(bloomFilter.add("foo")); @@ -61,9 +62,9 @@ public class BloomFilterTest { @Test public void testConflictsStrings() { - BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); - LongOpenHashSet longs = new LongOpenHashSet(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(1); + final BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); + final LongOpenHashSet longs = new LongOpenHashSet(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(1); for(int i = 1000; i-- != 0;) { final long l = random.nextLong(); @@ -78,12 +79,12 @@ public class BloomFilterTest { @Test public void testConflictsLongStrings() { - BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); - ObjectOpenHashSet<String> strings = new ObjectOpenHashSet<>(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(2); + final BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); + final ObjectOpenHashSet<String> strings = new ObjectOpenHashSet<>(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(2); for(int i = 1000; i-- != 0;) { - StringBuilder s = new StringBuilder(); + final StringBuilder s = new StringBuilder(); for(int j = 0; j < 100; j++) s.append(Long.toBinaryString(random.nextLong())); strings.add(s.toString()); bloomFilter.add(s); @@ -95,9 +96,9 @@ public class BloomFilterTest { @Test public void testConflictsLongs() { - BloomFilter<Long> bloomFilter = new BloomFilter<>(1000, 8, Funnels.longFunnel()); - LongOpenHashSet longs = new LongOpenHashSet(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(2); + final BloomFilter<Long> bloomFilter = new BloomFilter<>(1000, 8, Funnels.longFunnel()); + final LongOpenHashSet longs = new LongOpenHashSet(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(2); for(int i = 1000; i-- != 0;) { final long l = random.nextLong(); @@ -112,9 +113,9 @@ public class BloomFilterTest { @Test public void testConflictsByteArrays() { - BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); - LongOpenHashSet longs = new LongOpenHashSet(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(4); + final BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); + final LongOpenHashSet longs = new LongOpenHashSet(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(4); for(int i = 1000; i-- != 0;) { final long l = random.nextLong(); @@ -129,9 +130,9 @@ public class BloomFilterTest { @Test public void testConflictsHashes() { - BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); - LongOpenHashSet longs = new LongOpenHashSet(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(1); + final BloomFilter<Void> bloomFilter = BloomFilter.create(1000, 8); + final LongOpenHashSet longs = new LongOpenHashSet(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(1); for(int i = 1000; i-- != 0;) { final long l = random.nextLong(); @@ -147,7 +148,7 @@ public class BloomFilterTest { @Test public void testNegativeSeed() { - BloomFilter<Long> bloomFilter = new BloomFilter<>(1000, 8, Funnels.longFunnel()); + final BloomFilter<Long> bloomFilter = new BloomFilter<>(1000, 8, Funnels.longFunnel()); assertTrue(bloomFilter.add("test")); assertFalse(bloomFilter.add("test")); } @@ -155,9 +156,9 @@ public class BloomFilterTest { @Ignore @Test public void testConflictsBig() { - BloomFilter<Long> bloomFilter = new BloomFilter<>(1000000000, 30, Funnels.longFunnel()); - LongOpenHashSet longs = new LongOpenHashSet(); - SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(5); + final BloomFilter<Long> bloomFilter = new BloomFilter<>(1000000000, 30, Funnels.longFunnel()); + final LongOpenHashSet longs = new LongOpenHashSet(); + final SplitMix64RandomGenerator random = new SplitMix64RandomGenerator(5); for(int i = 10000000; i-- != 0;) { final long l = random.nextLong(); @@ -171,7 +172,7 @@ public class BloomFilterTest { @Test public void testZeroFunctions() { - BloomFilter<Void> bloomFilter = BloomFilter.create(10, 0); + final BloomFilter<Void> bloomFilter = BloomFilter.create(10, 0); assertFalse(bloomFilter.add("test")); assertEquals(0, bloomFilter.size64()); } diff --git a/test/it/unimi/dsi/util/ByteBufferLongBigListTest.java b/test/it/unimi/dsi/util/ByteBufferLongBigListTest.java index 9289c13..9d9a6b4 100644 --- a/test/it/unimi/dsi/util/ByteBufferLongBigListTest.java +++ b/test/it/unimi/dsi/util/ByteBufferLongBigListTest.java @@ -1,3 +1,23 @@ +/* + * DSI utilities + * + * Copyright (C) 2010-2020 Sebastiano Vigna + * + * This library is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 3 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, see <http://www.gnu.org/licenses/>. + * + */ + package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; diff --git a/test/it/unimi/dsi/util/CircularCharArrayBufferTest.java b/test/it/unimi/dsi/util/CircularCharArrayBufferTest.java index 95acb92..8f3dfab 100644 --- a/test/it/unimi/dsi/util/CircularCharArrayBufferTest.java +++ b/test/it/unimi/dsi/util/CircularCharArrayBufferTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import java.util.Iterator; diff --git a/test/it/unimi/dsi/util/FrontCodedStringListTest.java b/test/it/unimi/dsi/util/FrontCodedStringListTest.java index 01d53f0..ccea8fe 100644 --- a/test/it/unimi/dsi/util/FrontCodedStringListTest.java +++ b/test/it/unimi/dsi/util/FrontCodedStringListTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,8 +18,9 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.lang.MutableString; import java.util.Arrays; import java.util.Collections; @@ -29,14 +28,16 @@ import java.util.List; import org.junit.Test; +import it.unimi.dsi.lang.MutableString; + public class FrontCodedStringListTest { @Test public void testLargeSet() { - List<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS.clone()); - MutableString s = new MutableString(); + final List<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS.clone()); + final MutableString s = new MutableString(); for(int p = 0; p < 2; p++) { - for(boolean utf8: new boolean[] { false, true }) + for(final boolean utf8: new boolean[] { false, true }) for(int ratio = 1; ratio < 8; ratio++) { final FrontCodedStringList fcl = new FrontCodedStringList(c.iterator(), ratio, utf8); for(int i = 0; i < fcl.size(); i++) { @@ -52,8 +53,8 @@ public class FrontCodedStringListTest { @Test public void testSurrogatePairs() { - List<String> c = Arrays.asList(new String[] { "a", "AB\uE000AB", "\uD800\uDF02", "\uD800\uDF03", "b" }); - for(boolean utf8: new boolean[] { false, true }) + final List<String> c = Arrays.asList(new String[] { "a", "AB\uE000AB", "\uD800\uDF02", "\uD800\uDF03", "b" }); + for(final boolean utf8: new boolean[] { false, true }) for(int ratio = 1; ratio < 8; ratio++) { final FrontCodedStringList fcl = new FrontCodedStringList(c.iterator(), ratio, utf8); for(int i = 0; i < fcl.size(); i++) { diff --git a/test/it/unimi/dsi/util/HyperLogLogCounterArrayTest.java b/test/it/unimi/dsi/util/HyperLogLogCounterArrayTest.java index 58fc94d..5f7cec4 100644 --- a/test/it/unimi/dsi/util/HyperLogLogCounterArrayTest.java +++ b/test/it/unimi/dsi/util/HyperLogLogCounterArrayTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertTrue; import org.junit.Ignore; diff --git a/test/it/unimi/dsi/util/ImmutableBinaryTrieTest.java b/test/it/unimi/dsi/util/ImmutableBinaryTrieTest.java index c7c2b7e..44c46b8 100644 --- a/test/it/unimi/dsi/util/ImmutableBinaryTrieTest.java +++ b/test/it/unimi/dsi/util/ImmutableBinaryTrieTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import java.util.List; @@ -34,11 +34,11 @@ import it.unimi.dsi.fastutil.objects.ObjectLists; public class ImmutableBinaryTrieTest { - public void testImmutableBinaryTrie(List<String> strings) { + public void testImmutableBinaryTrie(final List<String> strings) { final ObjectArrayList<BitVector> vectors = new ObjectArrayList<>(); - for(int i = 0; i < strings.size(); i++) { - final BitVector v = LongArrayBitVector.ofLength(strings.get(i).length()); - for(int j = 0; j < strings.get(i).length(); j++) if (strings.get(i).charAt(j) == '1') v.set(j); + for (final String string : strings) { + final BitVector v = LongArrayBitVector.ofLength(string.length()); + for(int j = 0; j < string.length(); j++) if (string.charAt(j) == '1') v.set(j); vectors.add(v); } diff --git a/test/it/unimi/dsi/util/ImmutableExternalPrefixMapTest.java b/test/it/unimi/dsi/util/ImmutableExternalPrefixMapTest.java index 1504af0..4010457 100644 --- a/test/it/unimi/dsi/util/ImmutableExternalPrefixMapTest.java +++ b/test/it/unimi/dsi/util/ImmutableExternalPrefixMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,12 +18,11 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; -import it.unimi.dsi.fastutil.objects.ObjectRBTreeSet; -import it.unimi.dsi.fastutil.objects.ObjectSets; import java.io.IOException; import java.util.Arrays; @@ -34,38 +31,39 @@ import java.util.Iterator; import org.junit.Test; +import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectRBTreeSet; +import it.unimi.dsi.fastutil.objects.ObjectSets; + public class ImmutableExternalPrefixMapTest { public void testLargeSet(final int blockSize) throws IOException { - Collection<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS); + final Collection<String> c = Arrays.asList(TernaryIntervalSearchTreeTest.WORDS); TernaryIntervalSearchTree t = new TernaryIntervalSearchTree(c); ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(c, blockSize); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) assertTrue(TernaryIntervalSearchTreeTest.WORDS[i], d.containsKey(TernaryIntervalSearchTreeTest.WORDS[i])); + for (final String element : TernaryIntervalSearchTreeTest.WORDS) assertTrue(element, d.containsKey(element)); for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) assertEquals(TernaryIntervalSearchTreeTest.WORDS[i], d.list().get(i).toString()); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) - for(int j = 0; j < TernaryIntervalSearchTreeTest.WORDS[i].length(); j++) { - String s = TernaryIntervalSearchTreeTest.WORDS[i].substring(0, j + 1); - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - s = s + " "; - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - s = s.substring(0, s.length() - 1) + "~"; - assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); - } + for (final String element : TernaryIntervalSearchTreeTest.WORDS) for(int j = 0; j < element.length(); j++) { + String s = element.substring(0, j + 1); + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + s = s + " "; + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + s = s.substring(0, s.length() - 1) + "~"; + assertEquals(s, t.rangeMap().get(s), d.getInterval(s)); + } // Similar tests, using all prefixes of all strings in WORDS. - Collection<String> p = new ObjectRBTreeSet<>(); - for(int i = 0; i < TernaryIntervalSearchTreeTest.WORDS.length; i++) - for(int j = 0; j < TernaryIntervalSearchTreeTest.WORDS[i].length(); j++) - p.add(TernaryIntervalSearchTreeTest.WORDS[i].substring(0, j + 1)); + final Collection<String> p = new ObjectRBTreeSet<>(); + for (final String element : TernaryIntervalSearchTreeTest.WORDS) for(int j = 0; j < element.length(); j++) + p.add(element.substring(0, j + 1)); d = new ImmutableExternalPrefixMap(p, blockSize); t = new TernaryIntervalSearchTree(p); int j = 0; - for(Iterator<String> i = p.iterator(); i.hasNext();) { - String s = i.next(); + for (final String s : p) { assertTrue(s, d.containsKey(s)); assertTrue(s, d.containsKey(s)); assertEquals(s, d.list().get(j++).toString()); @@ -110,13 +108,13 @@ public class ImmutableExternalPrefixMapTest { @Test public void testPrefixes() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ba", "bb" })); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ba", "bb" })); assertEquals(Interval.valueOf(1, 2), d.getInterval("b")); } @Test public void testLargeRootPrefixes() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "aab", "aac", "aad" }), 2); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "aab", "aac", "aad" }), 2); assertEquals(Interval.valueOf(0, 2), d.getInterval("")); assertEquals(Interval.valueOf(0, 2), d.getInterval("aa")); assertEquals(Interval.valueOf(0, 2), d.getInterval("aa")); @@ -124,7 +122,7 @@ public class ImmutableExternalPrefixMapTest { @Test public void testSingleton() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(ObjectSets.singleton("a"), 1024); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(ObjectSets.singleton("a"), 1024); assertTrue(d.containsKey("a")); assertFalse(d.containsKey("b")); assertFalse(d.containsKey("0")); @@ -132,7 +130,7 @@ public class ImmutableExternalPrefixMapTest { @Test public void testPrefixOutOfRange() throws IOException { - ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ac" })); + final ImmutableExternalPrefixMap d = new ImmutableExternalPrefixMap(new ObjectLinkedOpenHashSet<CharSequence>(new String[] { "ab", "ac" })); assertEquals(Intervals.EMPTY_INTERVAL, d.getInterval("b")); assertEquals(Interval.valueOf(0, 1), d.getInterval("a")); } diff --git a/test/it/unimi/dsi/util/IntervalTest.java b/test/it/unimi/dsi/util/IntervalTest.java index 1542604..440c7d2 100644 --- a/test/it/unimi/dsi/util/IntervalTest.java +++ b/test/it/unimi/dsi/util/IntervalTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,20 +18,23 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static it.unimi.dsi.util.Intervals.EMPTY_INTERVAL; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; + +import java.util.Arrays; + +import org.junit.Test; + import it.unimi.dsi.fastutil.ints.IntIterators; import it.unimi.dsi.fastutil.ints.IntOpenHashSet; import it.unimi.dsi.fastutil.ints.IntRBTreeSet; import it.unimi.dsi.fastutil.ints.IntSortedSet; import it.unimi.dsi.fastutil.ints.IntSortedSets; -import java.util.Arrays; - -import org.junit.Test; - public class IntervalTest { @Test @@ -86,7 +87,7 @@ public class IntervalTest { try { EMPTY_INTERVAL.contains(0, 1); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -97,7 +98,7 @@ public class IntervalTest { try { EMPTY_INTERVAL.contains(0, 1, 2); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -112,7 +113,7 @@ public class IntervalTest { try { EMPTY_INTERVAL.compareTo(0); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -128,7 +129,7 @@ public class IntervalTest { try { EMPTY_INTERVAL.compareTo(0, 1); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -149,7 +150,7 @@ public class IntervalTest { try { EMPTY_INTERVAL.compareTo(0, 1, 2); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -170,9 +171,9 @@ public class IntervalTest { } - private IntSortedSet toSortedSet(Interval interval) { + private IntSortedSet toSortedSet(final Interval interval) { if (interval == EMPTY_INTERVAL) return IntSortedSets.EMPTY_SET; - IntSortedSet set = new IntRBTreeSet(); + final IntSortedSet set = new IntRBTreeSet(); for(int i = interval.left; i <= interval.right; i++) set.add(i); return set; } @@ -181,8 +182,8 @@ public class IntervalTest { public void testSubsets() { for(int i = 0; i < 10; i++) for(int j = i - 1; j < 10; j++) { - Interval interval = j < i ? EMPTY_INTERVAL : Interval.valueOf(i, j); - IntSortedSet set = toSortedSet(interval); + final Interval interval = j < i ? EMPTY_INTERVAL : Interval.valueOf(i, j); + final IntSortedSet set = toSortedSet(interval); assertEquals(set, interval); assertTrue(Arrays.equals(IntIterators.unwrap(set.iterator()), IntIterators.unwrap(interval.iterator()))); assertEquals(new IntOpenHashSet(set), interval); diff --git a/test/it/unimi/dsi/util/KahanSummationTest.java b/test/it/unimi/dsi/util/KahanSummationTest.java index bc8d23a..6f07cad 100644 --- a/test/it/unimi/dsi/util/KahanSummationTest.java +++ b/test/it/unimi/dsi/util/KahanSummationTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * Copyright (C) 2011-2020 Sebastiano Vigna * @@ -18,6 +16,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import org.junit.Test; @@ -28,7 +28,7 @@ import org.junit.Test; public class KahanSummationTest { @Test public void testSum() { - KahanSummation sum = new KahanSummation(); + final KahanSummation sum = new KahanSummation(); sum.add(1); sum.add(2); sum.add(3); @@ -37,7 +37,7 @@ public class KahanSummationTest { @Test public void testDifficult() { - KahanSummation sum = new KahanSummation(); + final KahanSummation sum = new KahanSummation(); sum.add(Double.MIN_NORMAL); sum.add(Double.MIN_NORMAL); sum.add(-Double.MIN_NORMAL); diff --git a/test/it/unimi/dsi/util/LineIteratorTest.java b/test/it/unimi/dsi/util/LineIteratorTest.java index 516dbb4..b55ce77 100644 --- a/test/it/unimi/dsi/util/LineIteratorTest.java +++ b/test/it/unimi/dsi/util/LineIteratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,15 +18,18 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.io.FastBufferedReader; -import it.unimi.dsi.io.LineIterator; -import it.unimi.dsi.logging.ProgressLogger; import java.io.StringReader; import org.junit.Test; +import it.unimi.dsi.io.FastBufferedReader; +import it.unimi.dsi.io.LineIterator; +import it.unimi.dsi.logging.ProgressLogger; + public class LineIteratorTest { @@ -45,7 +46,7 @@ public class LineIteratorTest { testLineIterator(null); } - public void testLineIterator(ProgressLogger pl) { + public void testLineIterator(final ProgressLogger pl) { final LineIterator lineIterator = new LineIterator(new FastBufferedReader(new StringReader(TEXT)), pl); int i = 0; while(lineIterator.hasNext()) diff --git a/test/it/unimi/dsi/util/LiterallySignedStringMapTest.java b/test/it/unimi/dsi/util/LiterallySignedStringMapTest.java index d7d8c29..42af0ae 100644 --- a/test/it/unimi/dsi/util/LiterallySignedStringMapTest.java +++ b/test/it/unimi/dsi/util/LiterallySignedStringMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,11 +18,9 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.Hash; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.objects.Object2LongOpenCustomHashMap; -import it.unimi.dsi.lang.MutableString; import java.io.File; import java.io.IOException; @@ -34,20 +30,25 @@ import java.util.Collections; import org.junit.Test; +import it.unimi.dsi.fastutil.Hash; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.objects.Object2LongOpenCustomHashMap; +import it.unimi.dsi.lang.MutableString; + public class LiterallySignedStringMapTest { private final static class CharSequenceStrategy implements Hash.Strategy<CharSequence>, Serializable { private static final long serialVersionUID = 1L; @Override - public boolean equals(CharSequence a, CharSequence b) { + public boolean equals(final CharSequence a, final CharSequence b) { if (a == null) return b == null; if (b == null) return false; return a.toString().equals(b.toString()); } @Override - public int hashCode(CharSequence o) { + public int hashCode(final CharSequence o) { return o.toString().hashCode(); } } @@ -55,13 +56,13 @@ public class LiterallySignedStringMapTest { @Test public void testNumbers() throws IOException, ClassNotFoundException { for(int n = 10; n < 10000; n *= 10) { - String[] s = new String[n]; + final String[] s = new String[n]; for(int i = s.length; i-- != 0;) s[i] = Integer.toString(i); Collections.shuffle(Arrays.asList(s)); - FrontCodedStringList fcl = new FrontCodedStringList(Arrays.asList(s), 8, true); + final FrontCodedStringList fcl = new FrontCodedStringList(Arrays.asList(s), 8, true); // Test with mph - Object2LongOpenCustomHashMap<CharSequence> mph = new Object2LongOpenCustomHashMap<>(new CharSequenceStrategy()); + final Object2LongOpenCustomHashMap<CharSequence> mph = new Object2LongOpenCustomHashMap<>(new CharSequenceStrategy()); mph.defaultReturnValue(-1); for(int i = 0; i < s.length; i++) mph.put(new MutableString(s[i]), i); @@ -70,7 +71,7 @@ public class LiterallySignedStringMapTest { for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(s[i])); for(int i = s.length + n; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); BinIO.storeObject(map, temp); map = (LiterallySignedStringMap)BinIO.loadObject(temp); diff --git a/test/it/unimi/dsi/util/LongIntervalTest.java b/test/it/unimi/dsi/util/LongIntervalTest.java index 481c9c1..52db9d9 100644 --- a/test/it/unimi/dsi/util/LongIntervalTest.java +++ b/test/it/unimi/dsi/util/LongIntervalTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,20 +18,22 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static it.unimi.dsi.util.LongIntervals.EMPTY_INTERVAL; import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; + +import org.junit.Test; + import it.unimi.dsi.fastutil.longs.LongIterators; import it.unimi.dsi.fastutil.longs.LongOpenHashSet; import it.unimi.dsi.fastutil.longs.LongRBTreeSet; import it.unimi.dsi.fastutil.longs.LongSortedSet; import it.unimi.dsi.fastutil.longs.LongSortedSets; -import org.junit.Test; - public class LongIntervalTest { @Test @@ -86,7 +86,7 @@ public class LongIntervalTest { try { EMPTY_INTERVAL.contains(0, 1); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -97,7 +97,7 @@ public class LongIntervalTest { try { EMPTY_INTERVAL.contains(0, 1, 2); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -112,7 +112,7 @@ public class LongIntervalTest { try { EMPTY_INTERVAL.compareTo(0); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -128,7 +128,7 @@ public class LongIntervalTest { try { EMPTY_INTERVAL.compareTo(0, 1); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -149,7 +149,7 @@ public class LongIntervalTest { try { EMPTY_INTERVAL.compareTo(0, 1, 2); } - catch(IllegalArgumentException e) { + catch(final IllegalArgumentException e) { ok = true; } assertTrue(ok); @@ -170,9 +170,9 @@ public class LongIntervalTest { } - private LongSortedSet toSortedSet(LongInterval interval) { + private LongSortedSet toSortedSet(final LongInterval interval) { if (interval == EMPTY_INTERVAL) return LongSortedSets.EMPTY_SET; - LongSortedSet set = new LongRBTreeSet(); + final LongSortedSet set = new LongRBTreeSet(); for(long i = interval.left; i <= interval.right; i++) set.add(i); return set; } @@ -181,8 +181,8 @@ public class LongIntervalTest { public void testSubsets() { for(int i = 0; i < 10; i++) for(int j = i - 1; j < 10; j++) { - LongInterval interval = j < i ? EMPTY_INTERVAL : LongInterval.valueOf(i, j); - LongSortedSet set = toSortedSet(interval); + final LongInterval interval = j < i ? EMPTY_INTERVAL : LongInterval.valueOf(i, j); + final LongSortedSet set = toSortedSet(interval); assertEquals(set, interval); assertArrayEquals(LongIterators.unwrap(set.iterator()), LongIterators.unwrap(interval.iterator())); assertEquals(new LongOpenHashSet(set), interval); diff --git a/test/it/unimi/dsi/util/SemiExternalGammaListTest.java b/test/it/unimi/dsi/util/SemiExternalGammaListTest.java index 120546f..0550fea 100644 --- a/test/it/unimi/dsi/util/SemiExternalGammaListTest.java +++ b/test/it/unimi/dsi/util/SemiExternalGammaListTest.java @@ -1,9 +1,7 @@ -package it.unimi.dsi.util; - -/* +/* * DSI utilities * - * Copyright (C) 2010-2020 Sebastiano Vigna + * Copyright (C) 2010-2020 Sebastiano Vigna * * This library is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published by the Free @@ -17,45 +15,49 @@ package it.unimi.dsi.util; * * You should have received a copy of the GNU Lesser General Public License * along with this program; if not, see <http://www.gnu.org/licenses/>. - * + * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.longs.LongArrayList; -import it.unimi.dsi.fastutil.longs.LongList; -import it.unimi.dsi.io.InputBitStream; -import it.unimi.dsi.io.OutputBitStream; import java.io.IOException; import org.junit.Test; +import it.unimi.dsi.fastutil.longs.LongArrayList; +import it.unimi.dsi.fastutil.longs.LongList; +import it.unimi.dsi.io.InputBitStream; +import it.unimi.dsi.io.OutputBitStream; + /** * @author Fabien Campagne * @author Sebastiano Vigna */ public class SemiExternalGammaListTest { - private static InputBitStream buildInputStream(LongList longs) throws IOException { - byte[] array = new byte[longs.size() * 4]; + private static InputBitStream buildInputStream(final LongList longs) throws IOException { + final byte[] array = new byte[longs.size() * 4]; @SuppressWarnings("resource") + final OutputBitStream streamer = new OutputBitStream(array); for (int i = 0; i < longs.size(); i++) streamer.writeLongGamma(longs.getLong(i)); - int size = (int)(streamer.writtenBits() / 8) + ((streamer.writtenBits() % 8) == 0 ? 0 : 1); - byte[] smaller = new byte[size]; + final int size = (int)(streamer.writtenBits() / 8) + ((streamer.writtenBits() % 8) == 0 ? 0 : 1); + final byte[] smaller = new byte[size]; System.arraycopy(array, 0, smaller, 0, size); return new InputBitStream(smaller); } - + @Test public void testSemiExternalGammaListGammaCoding() throws IOException { - long[] longs = { 10, 300, 450, 650, 1000, 1290, 1699 }; - LongList listLongs = new LongArrayList(longs); + final long[] longs = { 10, 300, 450, 650, 1000, 1290, 1699 }; + final LongList listLongs = new LongArrayList(longs); SemiExternalGammaList list = new SemiExternalGammaList(buildInputStream(listLongs), 1, listLongs.size()); for (int i = 0; i < longs.length; ++i) { @@ -76,7 +78,7 @@ public class SemiExternalGammaListTest { for (int i = 0; i < longs.length; ++i) { assertEquals(("test failed for index: " + i), longs[i], list.getLong(i)); } - + list = new SemiExternalGammaList(buildInputStream(listLongs), 8, listLongs.size()); for (int i = 0; i < longs.length; ++i) { assertEquals(("test failed for index: " + i), longs[i], list.getLong(i)); @@ -86,8 +88,8 @@ public class SemiExternalGammaListTest { @Test public void testEmptySemiExternalGammaListGammaCoding() throws IOException { - long[] longs = { }; - LongList listOffsets = new LongArrayList(longs); + final long[] longs = { }; + final LongList listOffsets = new LongArrayList(longs); new SemiExternalGammaList(buildInputStream(listOffsets), 1, listOffsets.size()); assertTrue(true); diff --git a/test/it/unimi/dsi/util/ShiftAddXorSignedStringMapTest.java b/test/it/unimi/dsi/util/ShiftAddXorSignedStringMapTest.java index 051c87f..e350981 100644 --- a/test/it/unimi/dsi/util/ShiftAddXorSignedStringMapTest.java +++ b/test/it/unimi/dsi/util/ShiftAddXorSignedStringMapTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,9 +18,9 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; -import it.unimi.dsi.fastutil.io.BinIO; -import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; import java.io.File; import java.io.IOException; @@ -30,6 +28,9 @@ import java.util.Arrays; import org.junit.Test; +import it.unimi.dsi.fastutil.io.BinIO; +import it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; + public class ShiftAddXorSignedStringMapTest { @SuppressWarnings("deprecation") @@ -37,18 +38,18 @@ public class ShiftAddXorSignedStringMapTest { public void testNumbers() throws IOException, ClassNotFoundException { for(int width = 16; width <= Long.SIZE; width += 8) { - String[] s = new String[1000]; - long[] v = new long[s.length]; + final String[] s = new String[1000]; + final long[] v = new long[s.length]; for(int i = s.length; i-- != 0;) s[(int)(v[i] = i)] = Integer.toString(i); // Test with mph - Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); + final Object2LongOpenHashMap<String> mph = new Object2LongOpenHashMap<>(s, v); ShiftAddXorSignedStringMap map = new ShiftAddXorSignedStringMap(Arrays.asList(s).iterator(), mph, width); for(int i = s.length; i-- != 0;) assertEquals(i, map.getLong(Integer.toString(i))); for(int i = s.length + 100; i-- != s.length;) assertEquals(-1, map.getLong(Integer.toString(i))); - File temp = File.createTempFile(getClass().getSimpleName(), "test"); + final File temp = File.createTempFile(getClass().getSimpleName(), "test"); temp.deleteOnExit(); BinIO.storeObject(map, temp); map = (ShiftAddXorSignedStringMap)BinIO.loadObject(temp); diff --git a/test/it/unimi/dsi/util/SplitMix64RandomGeneratorTest.java b/test/it/unimi/dsi/util/SplitMix64RandomGeneratorTest.java index cbbfee6..bf762f3 100644 --- a/test/it/unimi/dsi/util/SplitMix64RandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/SplitMix64RandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -32,11 +31,11 @@ public class SplitMix64RandomGeneratorTest { @Test public void testNextFloat() { - for (long seed : seeds) { - SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); + for (final long seed : seeds) { + final SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = splitMix.nextFloat(); + final float d = splitMix.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -48,11 +47,11 @@ public class SplitMix64RandomGeneratorTest { @Test public void testNextDouble() { - for (long seed : seeds) { - SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); + for (final long seed : seeds) { + final SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = splitMix.nextDouble(); + final double d = splitMix.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -64,11 +63,11 @@ public class SplitMix64RandomGeneratorTest { @Test public void testNextInt() { - for (long seed : seeds) { - SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); + for (final long seed : seeds) { + final SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = splitMix.nextInt(101); + final int d = splitMix.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -80,13 +79,13 @@ public class SplitMix64RandomGeneratorTest { @Test public void testNextInt2() { - for (long seed : seeds) { - SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); + for (final long seed : seeds) { + final SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = splitMix.nextInt(); + final int d = splitMix.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -100,13 +99,13 @@ public class SplitMix64RandomGeneratorTest { @Test public void testNextLong() { - for (long seed : seeds) { - SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); + for (final long seed : seeds) { + final SplitMix64RandomGenerator splitMix = new SplitMix64RandomGenerator(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = splitMix.nextLong(); + final long d = splitMix.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; @@ -120,8 +119,8 @@ public class SplitMix64RandomGeneratorTest { @Test public void testSameAsRandom() { - SplitMix64Random splitMixStarRandom = new SplitMix64Random(0); - SplitMix64RandomGenerator splitMixStar = new SplitMix64RandomGenerator(0); + final SplitMix64Random splitMixStarRandom = new SplitMix64Random(0); + final SplitMix64RandomGenerator splitMixStar = new SplitMix64RandomGenerator(0); for(int i = 1000000; i-- != 0;) { assertEquals(splitMixStar.nextLong(), splitMixStarRandom.nextLong()); assertEquals(0, splitMixStar.nextDouble(), splitMixStarRandom.nextDouble()); diff --git a/test/it/unimi/dsi/util/SplitMix64RandomTest.java b/test/it/unimi/dsi/util/SplitMix64RandomTest.java index b48efbd..26e060a 100644 --- a/test/it/unimi/dsi/util/SplitMix64RandomTest.java +++ b/test/it/unimi/dsi/util/SplitMix64RandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -32,11 +31,11 @@ public class SplitMix64RandomTest { @Test public void testNextFloat() { - for (long seed : seeds) { - SplitMix64Random splitMixRandom = new SplitMix64Random(seed); + for (final long seed : seeds) { + final SplitMix64Random splitMixRandom = new SplitMix64Random(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = splitMixRandom.nextFloat(); + final float d = splitMixRandom.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -48,11 +47,11 @@ public class SplitMix64RandomTest { @Test public void testNextDouble() { - for (long seed : seeds) { - SplitMix64Random splitMixRandom = new SplitMix64Random(seed); + for (final long seed : seeds) { + final SplitMix64Random splitMixRandom = new SplitMix64Random(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = splitMixRandom.nextDouble(); + final double d = splitMixRandom.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -64,11 +63,11 @@ public class SplitMix64RandomTest { @Test public void testNextInt() { - for (long seed : seeds) { - SplitMix64Random splitMixRandom = new SplitMix64Random(seed); + for (final long seed : seeds) { + final SplitMix64Random splitMixRandom = new SplitMix64Random(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = splitMixRandom.nextInt(101); + final int d = splitMixRandom.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -80,13 +79,13 @@ public class SplitMix64RandomTest { @Test public void testNextInt2() { - for (long seed : seeds) { - SplitMix64Random splitMixRandom = new SplitMix64Random(seed); + for (final long seed : seeds) { + final SplitMix64Random splitMixRandom = new SplitMix64Random(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = splitMixRandom.nextInt(); + final int d = splitMixRandom.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -100,13 +99,13 @@ public class SplitMix64RandomTest { @Test public void testNextLong() { - for (long seed : seeds) { - SplitMix64Random splitMixRandom = new SplitMix64Random(seed); + for (final long seed : seeds) { + final SplitMix64Random splitMixRandom = new SplitMix64Random(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = splitMixRandom.nextLong(); + final long d = splitMixRandom.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; diff --git a/test/it/unimi/dsi/util/TernaryIntervalSearchTreeTest.java b/test/it/unimi/dsi/util/TernaryIntervalSearchTreeTest.java index a881385..8c92de5 100644 --- a/test/it/unimi/dsi/util/TernaryIntervalSearchTreeTest.java +++ b/test/it/unimi/dsi/util/TernaryIntervalSearchTreeTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/TextPatternTest.java b/test/it/unimi/dsi/util/TextPatternTest.java index ec4ae91..2791d7a 100644 --- a/test/it/unimi/dsi/util/TextPatternTest.java +++ b/test/it/unimi/dsi/util/TextPatternTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,18 +18,21 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import it.unimi.dsi.fastutil.chars.CharArrayList; import org.junit.Test; +import it.unimi.dsi.fastutil.chars.CharArrayList; + public class TextPatternTest { @Test public void testSingleCharacterSearch() { - byte[] b = new byte[] { 1, (byte)'A', 2 }; - String s = " A "; - TextPattern pattern = new TextPattern("A"); + final byte[] b = new byte[] { 1, (byte)'A', 2 }; + final String s = " A "; + final TextPattern pattern = new TextPattern("A"); assertEquals(-1, pattern.search(b, 0, 1)); assertEquals(-1, pattern.search(s, 0, 1)); @@ -46,9 +47,9 @@ public class TextPatternTest { @Test public void testSearch() { - byte[] b = new byte[] { 1, (byte)'A', 'B', 2 }; - String s = " AB "; - TextPattern pattern = new TextPattern("AB"); + final byte[] b = new byte[] { 1, (byte)'A', 'B', 2 }; + final String s = " AB "; + final TextPattern pattern = new TextPattern("AB"); assertEquals(-1, pattern.search(b, 0, 2)); assertEquals(-1, pattern.search(s, 0, 2)); diff --git a/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGeneratorTest.java index 57d7609..bc98704 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomTest.java b/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomTest.java index 1aee92b..71042ee 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128PlusPlusRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomGeneratorTest.java index ac7cc2f..d501205 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomTest.java b/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomTest.java index 2980ced..5281ac1 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128PlusRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGeneratorTest.java index d45dcbb..c35c5ff 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomTest.java b/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomTest.java index fafe928..ee18943 100644 --- a/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomTest.java +++ b/test/it/unimi/dsi/util/XoRoShiRo128StarStarRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGeneratorTest.java index aa5853b..deb68fc 100644 --- a/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomTest.java b/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomTest.java index 35137bf..c3a4b06 100644 --- a/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256PlusPlusRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256PlusRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoShiRo256PlusRandomGeneratorTest.java index ef7a89f..6dda305 100644 --- a/test/it/unimi/dsi/util/XoShiRo256PlusRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256PlusRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256PlusRandomTest.java b/test/it/unimi/dsi/util/XoShiRo256PlusRandomTest.java index be93acc..658de4d 100644 --- a/test/it/unimi/dsi/util/XoShiRo256PlusRandomTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256PlusRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256StarStarRandomGeneratorTest.java b/test/it/unimi/dsi/util/XoShiRo256StarStarRandomGeneratorTest.java index 44d32d0..7ed6443 100644 --- a/test/it/unimi/dsi/util/XoShiRo256StarStarRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256StarStarRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XoShiRo256StarStarRandomTest.java b/test/it/unimi/dsi/util/XoShiRo256StarStarRandomTest.java index 9162965..e35ceb0 100644 --- a/test/it/unimi/dsi/util/XoShiRo256StarStarRandomTest.java +++ b/test/it/unimi/dsi/util/XoShiRo256StarStarRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XorShift1024StarPhiRandomGeneratorTest.java b/test/it/unimi/dsi/util/XorShift1024StarPhiRandomGeneratorTest.java index bace500..5630b55 100644 --- a/test/it/unimi/dsi/util/XorShift1024StarPhiRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XorShift1024StarPhiRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XorShift1024StarPhiRandomTest.java b/test/it/unimi/dsi/util/XorShift1024StarPhiRandomTest.java index e87c9f9..eec6c81 100644 --- a/test/it/unimi/dsi/util/XorShift1024StarPhiRandomTest.java +++ b/test/it/unimi/dsi/util/XorShift1024StarPhiRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XorShift1024StarRandomGeneratorTest.java b/test/it/unimi/dsi/util/XorShift1024StarRandomGeneratorTest.java index f7c8b7d..b1d6078 100644 --- a/test/it/unimi/dsi/util/XorShift1024StarRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XorShift1024StarRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -32,11 +31,11 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testNextFloat() { - for (long seed : seeds) { - XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = xorShift.nextFloat(); + final float d = xorShift.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -48,11 +47,11 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testNextDouble() { - for (long seed : seeds) { - XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = xorShift.nextDouble(); + final double d = xorShift.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -64,11 +63,11 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testNextInt() { - for (long seed : seeds) { - XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = xorShift.nextInt(101); + final int d = xorShift.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -80,13 +79,13 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testNextInt2() { - for (long seed : seeds) { - XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = xorShift.nextInt(); + final int d = xorShift.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -100,13 +99,13 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testNextLong() { - for (long seed : seeds) { - XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift1024StarRandomGenerator xorShift = new XorShift1024StarRandomGenerator(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = xorShift.nextLong(); + final long d = xorShift.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; @@ -120,8 +119,8 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testSameAsRandom() { - XorShift1024StarRandom xorShiftStarRandom = new XorShift1024StarRandom(0); - XorShift1024StarRandomGenerator xorShiftStar = new XorShift1024StarRandomGenerator(0); + final XorShift1024StarRandom xorShiftStarRandom = new XorShift1024StarRandom(0); + final XorShift1024StarRandomGenerator xorShiftStar = new XorShift1024StarRandomGenerator(0); for(int i = 1000000; i-- != 0;) { assertEquals(xorShiftStar.nextLong(), xorShiftStarRandom.nextLong()); assertEquals(0, xorShiftStar.nextDouble(), xorShiftStarRandom.nextDouble()); @@ -133,7 +132,7 @@ public class XorShift1024StarRandomGeneratorTest { @Test public void testJump() { - XorShift1024StarRandomGenerator xorShiftRandom0 = new XorShift1024StarRandomGenerator(0), xorShiftRandom1 = new XorShift1024StarRandomGenerator(0); + final XorShift1024StarRandomGenerator xorShiftRandom0 = new XorShift1024StarRandomGenerator(0), xorShiftRandom1 = new XorShift1024StarRandomGenerator(0); xorShiftRandom0.nextLong(); xorShiftRandom0.jump(); xorShiftRandom1.jump(); diff --git a/test/it/unimi/dsi/util/XorShift1024StarRandomTest.java b/test/it/unimi/dsi/util/XorShift1024StarRandomTest.java index 9507736..bb02a0b 100644 --- a/test/it/unimi/dsi/util/XorShift1024StarRandomTest.java +++ b/test/it/unimi/dsi/util/XorShift1024StarRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -33,11 +32,11 @@ public class XorShift1024StarRandomTest { @Test public void testNextFloat() { - for (long seed : seeds) { - XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); + for (final long seed : seeds) { + final XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = xorShiftRandom.nextFloat(); + final float d = xorShiftRandom.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -49,11 +48,11 @@ public class XorShift1024StarRandomTest { @Test public void testNextDouble() { - for (long seed : seeds) { - XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); + for (final long seed : seeds) { + final XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = xorShiftRandom.nextDouble(); + final double d = xorShiftRandom.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -65,11 +64,11 @@ public class XorShift1024StarRandomTest { @Test public void testNextInt() { - for (long seed : seeds) { - XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); + for (final long seed : seeds) { + final XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = xorShiftRandom.nextInt(101); + final int d = xorShiftRandom.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -81,13 +80,13 @@ public class XorShift1024StarRandomTest { @Test public void testNextInt2() { - for (long seed : seeds) { - XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); + for (final long seed : seeds) { + final XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = xorShiftRandom.nextInt(); + final int d = xorShiftRandom.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -101,13 +100,13 @@ public class XorShift1024StarRandomTest { @Test public void testNextLong() { - for (long seed : seeds) { - XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); + for (final long seed : seeds) { + final XorShift1024StarRandom xorShiftRandom = new XorShift1024StarRandom(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = xorShiftRandom.nextLong(); + final long d = xorShiftRandom.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; @@ -121,7 +120,7 @@ public class XorShift1024StarRandomTest { @Test public void testJump() { - XorShift1024StarRandom xorShiftRandom0 = new XorShift1024StarRandom(0), xorShiftRandom1 = new XorShift1024StarRandom(0); + final XorShift1024StarRandom xorShiftRandom0 = new XorShift1024StarRandom(0), xorShiftRandom1 = new XorShift1024StarRandom(0); xorShiftRandom0.nextLong(); xorShiftRandom0.jump(); xorShiftRandom1.jump(); diff --git a/test/it/unimi/dsi/util/XorShift128PlusRandomGeneratorTest.java b/test/it/unimi/dsi/util/XorShift128PlusRandomGeneratorTest.java index 89c9ec4..cb11575 100644 --- a/test/it/unimi/dsi/util/XorShift128PlusRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XorShift128PlusRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -33,11 +32,11 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testNextFloat() { - for (long seed : seeds) { - XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = xorShift.nextFloat(); + final float d = xorShift.nextFloat(); assertTrue(Float.toString(d), d < 1); assertTrue(Float.toString(d), d >= 0); avg += d; @@ -49,11 +48,11 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testNextDouble() { - for (long seed : seeds) { - XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = xorShift.nextDouble(); + final double d = xorShift.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -65,11 +64,11 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testNextInt() { - for (long seed : seeds) { - XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = xorShift.nextInt(101); + final int d = xorShift.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -81,13 +80,13 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testNextInt2() { - for (long seed : seeds) { - XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = xorShift.nextInt(); + final int d = xorShift.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -101,13 +100,13 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testNextLong() { - for (long seed : seeds) { - XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift128PlusRandomGenerator xorShift = new XorShift128PlusRandomGenerator(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = xorShift.nextLong(); + final long d = xorShift.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; @@ -121,8 +120,8 @@ public class XorShift128PlusRandomGeneratorTest { @Test public void testSameAsRandom() { - XorShift128PlusRandom xorShiftStarRandom = new XorShift128PlusRandom(0); - XorShift128PlusRandomGenerator xorShiftStar = new XorShift128PlusRandomGenerator(0); + final XorShift128PlusRandom xorShiftStarRandom = new XorShift128PlusRandom(0); + final XorShift128PlusRandomGenerator xorShiftStar = new XorShift128PlusRandomGenerator(0); for(int i = 1000000; i-- != 0;) { assertEquals(xorShiftStar.nextLong(), xorShiftStarRandom.nextLong()); assertEquals(0, xorShiftStar.nextDouble(), xorShiftStarRandom.nextDouble()); diff --git a/test/it/unimi/dsi/util/XorShift128PlusRandomTest.java b/test/it/unimi/dsi/util/XorShift128PlusRandomTest.java index b3b4cd3..b16a5dd 100644 --- a/test/it/unimi/dsi/util/XorShift128PlusRandomTest.java +++ b/test/it/unimi/dsi/util/XorShift128PlusRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/test/it/unimi/dsi/util/XorShift64StarRandomGeneratorTest.java b/test/it/unimi/dsi/util/XorShift64StarRandomGeneratorTest.java index baa9f7a..e2a39d7 100644 --- a/test/it/unimi/dsi/util/XorShift64StarRandomGeneratorTest.java +++ b/test/it/unimi/dsi/util/XorShift64StarRandomGeneratorTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -33,11 +32,11 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testNextFloat() { - for (long seed : seeds) { - XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = xorShift.nextFloat(); + final float d = xorShift.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -49,11 +48,11 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testNextDouble() { - for (long seed : seeds) { - XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = xorShift.nextDouble(); + final double d = xorShift.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -65,11 +64,11 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testNextInt() { - for (long seed : seeds) { - XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = xorShift.nextInt(101); + final int d = xorShift.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -81,13 +80,13 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testNextInt2() { - for (long seed : seeds) { - XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = xorShift.nextInt(); + final int d = xorShift.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -101,13 +100,13 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testNextLong() { - for (long seed : seeds) { - XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); + for (final long seed : seeds) { + final XorShift64StarRandomGenerator xorShift = new XorShift64StarRandomGenerator(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = xorShift.nextLong(); + final long d = xorShift.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; @@ -121,8 +120,8 @@ public class XorShift64StarRandomGeneratorTest { @Test public void testSameAsRandom() { - XorShift64StarRandom xorShiftStarRandom = new XorShift64StarRandom(0); - XorShift64StarRandomGenerator xorShiftStar = new XorShift64StarRandomGenerator(0); + final XorShift64StarRandom xorShiftStarRandom = new XorShift64StarRandom(0); + final XorShift64StarRandomGenerator xorShiftStar = new XorShift64StarRandomGenerator(0); for(int i = 1000000; i-- != 0;) { assertEquals(xorShiftStar.nextLong(), xorShiftStarRandom.nextLong()); assertEquals(0, xorShiftStar.nextDouble(), xorShiftStarRandom.nextDouble()); diff --git a/test/it/unimi/dsi/util/XorShift64StarRandomTest.java b/test/it/unimi/dsi/util/XorShift64StarRandomTest.java index 0f6f784..f6175c0 100644 --- a/test/it/unimi/dsi/util/XorShift64StarRandomTest.java +++ b/test/it/unimi/dsi/util/XorShift64StarRandomTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util; - /* * DSI utilities * @@ -20,6 +18,7 @@ package it.unimi.dsi.util; * */ +package it.unimi.dsi.util; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -32,11 +31,11 @@ public class XorShift64StarRandomTest { @Test public void testNextFloat() { - for (long seed : seeds) { - XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); + for (final long seed : seeds) { + final XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - float d = xorShiftRandom.nextFloat(); + final float d = xorShiftRandom.nextFloat(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -48,11 +47,11 @@ public class XorShift64StarRandomTest { @Test public void testNextDouble() { - for (long seed : seeds) { - XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); + for (final long seed : seeds) { + final XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); double avg = 0; for (int i = 1000000; i-- != 0;) { - double d = xorShiftRandom.nextDouble(); + final double d = xorShiftRandom.nextDouble(); assertTrue(d < 1); assertTrue(d >= 0); avg += d; @@ -64,11 +63,11 @@ public class XorShift64StarRandomTest { @Test public void testNextInt() { - for (long seed : seeds) { - XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); + for (final long seed : seeds) { + final XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); double avg = 0; for (int i = 100000000; i-- != 0;) { - int d = xorShiftRandom.nextInt(101); + final int d = xorShiftRandom.nextInt(101); assertTrue(d <= 100); assertTrue(d >= 0); avg += d; @@ -80,13 +79,13 @@ public class XorShift64StarRandomTest { @Test public void testNextInt2() { - for (long seed : seeds) { - XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); + for (final long seed : seeds) { + final XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); final int[] count = new int[32]; long change = 0; int prev = 0; for (int i = 1000000; i-- != 0;) { - int d = xorShiftRandom.nextInt(); + final int d = xorShiftRandom.nextInt(); change += Long.bitCount(d ^ prev); for (int b = 32; b-- != 0;) if ((d & (1 << b)) != 0) count[b]++; @@ -100,13 +99,13 @@ public class XorShift64StarRandomTest { @Test public void testNextLong() { - for (long seed : seeds) { - XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); + for (final long seed : seeds) { + final XorShift64StarRandom xorShiftRandom = new XorShift64StarRandom(seed); final int[] count = new int[64]; long change = 0; long prev = 0; for (int i = 1000000; i-- != 0;) { - long d = xorShiftRandom.nextLong(); + final long d = xorShiftRandom.nextLong(); change += Long.bitCount(d ^ prev); for (int b = 64; b-- != 0;) if ((d & (1L << b)) != 0) count[b]++; diff --git a/test/it/unimi/dsi/util/concurrent/ReorderingBlockingQueueTest.java b/test/it/unimi/dsi/util/concurrent/ReorderingBlockingQueueTest.java index efe455f..6775560 100644 --- a/test/it/unimi/dsi/util/concurrent/ReorderingBlockingQueueTest.java +++ b/test/it/unimi/dsi/util/concurrent/ReorderingBlockingQueueTest.java @@ -1,5 +1,3 @@ -package it.unimi.dsi.util.concurrent; - /* * DSI utilities * @@ -20,6 +18,8 @@ package it.unimi.dsi.util.concurrent; * */ +package it.unimi.dsi.util.concurrent; + import static org.junit.Assert.assertEquals; import org.junit.Test; -- GitLab