diff --git a/build.gradle b/build.gradle index 0ea8063..cc14cdc 100644 --- a/build.gradle +++ b/build.gradle @@ -18,6 +18,7 @@ plugins { id 'checkstyle' id 'de.thetaphi.forbiddenapis' version '2.6' id 'net.ltgt.errorprone' version '0.8.1' + id 'io.freefair.javadoc-links' version '4.1.2' } // The plugin inhibits annotation processing, disabling for now: see @@ -30,8 +31,8 @@ repositories { } dependencies { - api 'org.checkerframework:checker-qual:2.7.0' - compileOnly 'org.jetbrains:annotations:16.0.3' + api 'org.checkerframework:checker-qual:2.11.1' + compileOnly 'org.jetbrains:annotations:17.0.0' compileOnly 'com.google.errorprone:error_prone_annotations:2.3.3' def autoValueVersion = '1.6.5' compileOnly "com.google.auto.value:auto-value-annotations:$autoValueVersion" @@ -203,7 +204,7 @@ task sourcesJar(type: Jar, dependsOn: classes) { javadoc { options { - links 'http://docs.oracle.com/javase/8/docs/api/' + links 'https://docs.oracle.com/en/java/javase/11/docs/api/' tags = [ 'apiNote:a:API Note:', 'implSpec:a:Implementation Requirements:', @@ -232,7 +233,7 @@ publishing { artifact sourcesJar artifact javadocJar pom { - name = 'SmoothieMap 2' + name = 'SmoothieMap' inceptionYear = '2018' description = 'Map implementation with low footprint and no latency spikes' url = 'https://github.com/TimeAndSpaceIO/SmoothieMap' diff --git a/settings.gradle b/settings.gradle index e1090ff..f360f8f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,5 +1 @@ -/* - * This file was generated by the Gradle 'init' task. - */ - -rootProject.name = 'SmoothieMap2' +rootProject.name = 'SmoothieMap' diff --git a/src/main/java/io/timeandspace/collect/map/ObjObjMap.java b/src/main/java/io/timeandspace/collect/map/ObjObjMap.java index b873633..f7eadf7 100644 --- a/src/main/java/io/timeandspace/collect/map/ObjObjMap.java +++ b/src/main/java/io/timeandspace/collect/map/ObjObjMap.java @@ -541,7 +541,7 @@ default long mappingCount() { * true. {@code hashCode()} on the entry set is the same as on the map itself, see {@link * #hashCode()}. * - *

The entry set does not support the {@code Set#add} and {@link Set#addAll} operations. + *

The entry set does not support the {@link Set#add} and {@link Set#addAll} operations. * *

The set is created the first time this method is called, and returned in response to all * subsequent calls. No synchronization is performed, so there is a slight chance that multiple diff --git a/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMap.java b/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMap.java index ab91191..98b8250 100644 --- a/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMap.java +++ b/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMap.java @@ -182,10 +182,10 @@ * SmoothieMap.newBuilder().build()}. See possible configurations in the documentation for {@link * SmoothieMapBuilder}. * - *

Unlike {@link HashMap}, but like {@link java.util.concurrent.ConcurrentHashMap} or Guava's - * ImmutableMaps, SmoothieMap does not support null key and values. An attempt to put null - * key or value, or query null key or value (e. g. via {@link #get(Object) get(null)}), leads to - * a {@link NullPointerException}. + *

Unlike {@link HashMap}, but like {@link java.util.concurrent.ConcurrentHashMap}, {@code + * Map.of()} immutable Maps, and Guava's ImmutableMaps, SmoothieMap does not support null key + * and values. An attempt to put null key or value, or query null key or value (e. g. via {@link + * #get(Object) get(null)}), leads to a {@link NullPointerException}. * *

{@code SmoothieMap} supports pluggable keys' and values' equivalences which could be * configured in the builder, via {@link SmoothieMapBuilder#keyEquivalence(Equivalence)} and @@ -241,6 +241,7 @@ public class SmoothieMap implements ObjObjMap { * @param the type of values in SmoothieMap(s) to be created * @return a new {@link SmoothieMapBuilder} */ + @Contract(value = " -> new", pure = true) public static SmoothieMapBuilder newBuilder() { return SmoothieMapBuilder.create(); } diff --git a/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMapBuilder.java b/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMapBuilder.java index 1333bbf..0c0dc60 100644 --- a/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMapBuilder.java +++ b/src/main/javaTemplates/io/timeandspace/smoothie/SmoothieMapBuilder.java @@ -54,7 +54,7 @@ public final class SmoothieMapBuilder { private static final double MAX_EXPECTED_SIZE_ERROR_FRACTION = 0.05; @Contract(value = " -> new", pure = true) - public static SmoothieMapBuilder create() { + static SmoothieMapBuilder create() { return new SmoothieMapBuilder<>(); }