From 54546ce9ab27dba0464d955abc07d52f4cd228b3 Mon Sep 17 00:00:00 2001
From: Jonathan Shook
Date: Wed, 21 Dec 2022 14:59:12 -0600
Subject: [PATCH] put required categories on all binding functions, not just
one of each name
---
.../basics/shared/from_long/to_int/Add.java | 3 ++
.../basics/shared/from_long/to_int/Div.java | 3 ++
.../shared/from_long/to_int/FixedValue.java | 1 -
.../basics/shared/from_long/to_int/Mul.java | 3 ++
.../basics/shared/from_long/to_int/Scale.java | 40 -------------------
.../basics/shared/from_long/to_long/Add.java | 3 ++
.../from_long/to_long/AddCycleRange.java | 3 ++
.../from_long/to_long/AddHashRange.java | 3 ++
.../shared/from_long/to_long/Clamp.java | 3 ++
.../shared/from_long/to_long/CycleRange.java | 3 ++
.../basics/shared/from_long/to_long/Div.java | 3 ++
.../shared/from_long/to_long/FixedValue.java | 3 ++
.../from_long/to_long/HashInterval.java | 3 ++
.../shared/from_long/to_long/HashRange.java | 3 ++
.../from_long/to_long/HashRangeScaled.java | 3 ++
.../shared/from_long/to_long/Interpolate.java | 3 ++
.../basics/shared/from_long/to_long/Max.java | 3 ++
.../basics/shared/from_long/to_long/Min.java | 3 ++
.../basics/shared/from_long/to_long/Mod.java | 3 ++
.../basics/shared/from_long/to_long/Mul.java | 3 ++
.../shared/from_long/to_long/SignedHash.java | 3 ++
.../from_long/to_long/TriangularStep.java | 3 ++
.../from_long/to_string/FixedValue.java | 3 ++
.../shared/from_uuid/ToBase64String.java | 5 ++-
.../shared/unary_int/AddCycleRange.java | 3 ++
.../basics/shared/unary_int/AddHashRange.java | 3 ++
.../basics/shared/unary_int/Clamp.java | 3 ++
.../basics/shared/unary_int/CycleRange.java | 3 ++
.../library/basics/shared/unary_int/Div.java | 3 ++
.../basics/shared/unary_int/HashInterval.java | 3 ++
.../basics/shared/unary_int/HashRange.java | 3 ++
.../shared/unary_int/HashRangeScaled.java | 3 ++
.../library/basics/shared/unary_int/Max.java | 3 ++
.../library/basics/shared/unary_int/Min.java | 3 ++
.../library/basics/shared/unary_int/Mod.java | 3 ++
.../library/basics/shared/unary_int/Mul.java | 3 ++
.../basics/shared/unary_int/Scale.java | 40 -------------------
.../basics/shared/unary_int/SignedHash.java | 3 ++
.../basics/shared/unary_string/ToString.java | 3 ++
.../continuous/long_double/Cauchy.java | 3 ++
.../continuous/long_double/ChiSquared.java | 3 ++
.../long_double/ConstantContinuous.java | 3 ++
.../continuous/long_double/Enumerated.java | 3 ++
.../continuous/long_double/Exponential.java | 3 ++
.../curves4/continuous/long_double/F.java | 3 ++
.../curves4/continuous/long_double/Gamma.java | 3 ++
.../continuous/long_double/Gumbel.java | 3 ++
.../continuous/long_double/Laplace.java | 3 ++
.../curves4/continuous/long_double/Levy.java | 3 ++
.../continuous/long_double/LogNormal.java | 3 ++
.../continuous/long_double/Logistic.java | 3 ++
.../continuous/long_double/Nakagami.java | 3 ++
.../continuous/long_double/Normal.java | 3 ++
.../continuous/long_double/Pareto.java | 3 ++
.../curves4/continuous/long_double/T.java | 3 ++
.../continuous/long_double/Triangular.java | 3 ++
.../continuous/long_double/Uniform.java | 3 ++
.../continuous/long_double/Weibull.java | 3 ++
.../curves4/discrete/int_long/Geometric.java | 3 ++
.../discrete/int_long/Hypergeometric.java | 3 ++
.../curves4/discrete/int_long/Pascal.java | 3 ++
.../curves4/discrete/int_long/Poisson.java | 3 ++
.../curves4/discrete/int_long/Uniform.java | 3 ++
.../curves4/discrete/int_long/Zipf.java | 3 ++
.../curves4/discrete/long_int/Geometric.java | 3 ++
.../discrete/long_int/Hypergeometric.java | 3 ++
.../curves4/discrete/long_int/Pascal.java | 3 ++
.../curves4/discrete/long_int/Poisson.java | 3 ++
.../curves4/discrete/long_int/Uniform.java | 3 ++
.../curves4/discrete/long_int/Zipf.java | 3 ++
.../curves4/discrete/long_long/Geometric.java | 3 ++
.../discrete/long_long/Hypergeometric.java | 3 ++
.../curves4/discrete/long_long/Pascal.java | 3 ++
.../curves4/discrete/long_long/Poisson.java | 3 ++
.../curves4/discrete/long_long/Uniform.java | 3 ++
.../curves4/discrete/long_long/Zipf.java | 3 ++
76 files changed, 220 insertions(+), 82 deletions(-)
delete mode 100644 virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Scale.java
delete mode 100644 virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Scale.java
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Add.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Add.java
index c0afeec84..63df6c1d9 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Add.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Add.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongToIntFunction;
@ThreadSafeMapper
+@Categories({Category.general})
public class Add implements LongToIntFunction {
private final long addend;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Div.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Div.java
index e5aee3b5e..dc379da41 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Div.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Div.java
@@ -15,6 +15,8 @@
*/
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Description;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -22,6 +24,7 @@ import java.util.function.LongToIntFunction;
@Description("divides the operand by an long and returns the whole part")
@ThreadSafeMapper
+@Categories({Category.general})
public class Div implements LongToIntFunction {
private final int divisor;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/FixedValue.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/FixedValue.java
index 7923b8f0f..5a1ccf7ca 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/FixedValue.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/FixedValue.java
@@ -28,7 +28,6 @@ import java.util.function.LongToIntFunction;
*/
@ThreadSafeMapper
@Categories({Category.general})
-
public class FixedValue implements LongToIntFunction {
private final int fixedValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Mul.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Mul.java
index 0252b64ef..6f35f3e56 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Mul.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Mul.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongToIntFunction;
@ThreadSafeMapper
+@Categories({Category.general})
public class Mul implements LongToIntFunction {
public Mul(int multiplicand) {
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Scale.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Scale.java
deleted file mode 100644
index ea1267a1f..000000000
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_int/Scale.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2022 nosqlbench
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.nosqlbench.virtdata.library.basics.shared.from_long.to_int;
-
-import io.nosqlbench.virtdata.api.annotations.Categories;
-import io.nosqlbench.virtdata.api.annotations.Category;
-import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
-
-import java.util.function.LongToIntFunction;
-
-@ThreadSafeMapper
-@Deprecated
-@Categories({Category.general})
-public class Scale implements LongToIntFunction {
-
- private final double scaleFactor;
-
- public Scale(double scaleFactor) {
- this.scaleFactor = scaleFactor;
- }
-
- @Override
- public int applyAsInt(long value) {
- return (int) (scaleFactor * (double) value);
- }
-}
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Add.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Add.java
index 5723eff76..6ad658ba2 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Add.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Add.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Add implements LongUnaryOperator {
private final long addend;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddCycleRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddCycleRange.java
index 506aa8965..a9406432d 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddCycleRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddCycleRange.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class AddCycleRange implements LongUnaryOperator {
private final CycleRange cycleRange;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddHashRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddHashRange.java
index 05c9c8ea8..1de3c5830 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddHashRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/AddHashRange.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class AddHashRange implements LongUnaryOperator {
private final HashRange hashRange;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Clamp.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Clamp.java
index d08ff84d9..afce062be 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Clamp.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Clamp.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -26,6 +28,7 @@ import java.util.function.LongUnaryOperator;
* at most the maximum value.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Clamp implements LongUnaryOperator {
private final long min;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/CycleRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/CycleRange.java
index 0248cc77d..371948e3b 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/CycleRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/CycleRange.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class CycleRange implements LongUnaryOperator {
private final long minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Div.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Div.java
index f81d424fe..4ec47649d 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Div.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Div.java
@@ -15,6 +15,8 @@
*/
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Divide the operand by a fixed value and return the result.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Div implements LongUnaryOperator {
private final long divisor;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/FixedValue.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/FixedValue.java
index 36ba773d7..77bd1686f 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/FixedValue.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/FixedValue.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class FixedValue implements LongUnaryOperator {
private final long fixedValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashInterval.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashInterval.java
index 06f8acc08..33e8d742d 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashInterval.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashInterval.java
@@ -17,6 +17,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.api.errors.BasicError;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -33,6 +35,7 @@ import java.util.function.LongUnaryOperator;
* (5,6), or as wide as the relevant data type allows.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class HashInterval implements LongUnaryOperator {
private final long minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRange.java
index 6e96d5bb8..77310223f 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRange.java
@@ -17,6 +17,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
import io.nosqlbench.api.errors.BasicError;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@@ -30,6 +32,7 @@ import java.util.function.LongUnaryOperator;
* (5,5), or as wide as the relevant data type allows.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class HashRange implements LongUnaryOperator {
private final long minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRangeScaled.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRangeScaled.java
index 48c6afc52..3da3e2230 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRangeScaled.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/HashRangeScaled.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@@ -25,6 +27,7 @@ import java.util.function.LongUnaryOperator;
* a scale factor, with a default scale factor of 1.0d
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class HashRangeScaled implements LongUnaryOperator {
private final double scalefactor;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Interpolate.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Interpolate.java
index 1cbeab9e3..c60a76844 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Interpolate.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Interpolate.java
@@ -17,12 +17,15 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Interpolate implements LongUnaryOperator {
private final io.nosqlbench.virtdata.library.basics.shared.from_long.to_double.Interpolate basefunc;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Max.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Max.java
index 0ae98a6b2..f02281524 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Max.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Max.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -25,6 +27,7 @@ import java.util.function.LongUnaryOperator;
* Return the maximum of either the input value or the specified max.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Max implements LongUnaryOperator {
private final long max;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Min.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Min.java
index 06c5a7dff..4bc118477 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Min.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Min.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Return the minimum of either the input value or the specified minimum.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Min implements LongUnaryOperator {
private final long min;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mod.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mod.java
index e216f9c0e..7a52185cb 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mod.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mod.java
@@ -15,6 +15,8 @@
*/
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@@ -23,6 +25,7 @@ import java.util.function.LongUnaryOperator;
* Return the result of modulo division by the specified divisor.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Mod implements LongUnaryOperator {
private final Long modulo;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mul.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mul.java
index 9ac809423..a238e2098 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mul.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/Mul.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongUnaryOperator;
@@ -24,6 +26,7 @@ import java.util.function.LongUnaryOperator;
* Return the result of multiplying the specified value with the input.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class Mul implements LongUnaryOperator {
public Mul(long multiplicand) {
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/SignedHash.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/SignedHash.java
index 157d3aa32..92231ec4a 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/SignedHash.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/SignedHash.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import io.nosqlbench.virtdata.murmur.Murmur3F;
@@ -32,6 +34,7 @@ import java.util.function.LongUnaryOperator;
* as well as negative values.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class SignedHash implements LongUnaryOperator {
// TODO: Bench this against the non-state based TL implementations
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/TriangularStep.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/TriangularStep.java
index c9bc86a9f..5597354fb 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/TriangularStep.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_long/TriangularStep.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_long;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -38,6 +40,7 @@ import java.util.function.LongUnaryOperator;
* join the project or let us know.
*/
@ThreadSafeMapper
+@Categories({Category.experimental})
public class TriangularStep implements LongUnaryOperator {
private final Hash hasher = new Hash();
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_string/FixedValue.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_string/FixedValue.java
index 75d7f1101..8315a5ca2 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_string/FixedValue.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_long/to_string/FixedValue.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.from_long.to_string;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.LongFunction;
@ThreadSafeMapper
+@Categories({Category.general})
public class FixedValue implements LongFunction {
private final String value;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_uuid/ToBase64String.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_uuid/ToBase64String.java
index 6f65b3667..f0d167abc 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_uuid/ToBase64String.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/from_uuid/ToBase64String.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.from_uuid;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -26,8 +28,9 @@ import java.util.UUID;
import java.util.function.Function;
@ThreadSafeMapper
+@Categories(Category.conversion)
public class ToBase64String implements Function {
- private ThreadLocal tl_encoder = ThreadLocal.withInitial(Base64::getEncoder);
+ private final ThreadLocal tl_encoder = ThreadLocal.withInitial(Base64::getEncoder);
@Example({"ToBase64String()","Encode the bits of a UUID into a Base64 String"})
public ToBase64String() {
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddCycleRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddCycleRange.java
index e2e8f56d8..e23c05569 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddCycleRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddCycleRange.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@@ -24,6 +26,7 @@ import java.util.function.IntUnaryOperator;
* Adds a cycle range to the input, producing an increasing sawtooth-like output.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class AddCycleRange implements IntUnaryOperator {
private final CycleRange cycleRange;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddHashRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddHashRange.java
index c66e6cfd8..2b1aea418 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddHashRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/AddHashRange.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@@ -24,6 +26,7 @@ import java.util.function.IntUnaryOperator;
* Adds a pseudo-random value within the specified range to the input.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class AddHashRange implements IntUnaryOperator {
private final io.nosqlbench.virtdata.library.basics.shared.unary_int.HashRange hashRange;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Clamp.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Clamp.java
index 8f0abf477..e7839eafa 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Clamp.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Clamp.java
@@ -16,12 +16,15 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Clamp implements IntUnaryOperator {
private final int min;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/CycleRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/CycleRange.java
index 2d4c19923..fe80434a6 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/CycleRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/CycleRange.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -25,6 +27,7 @@ import java.util.function.IntUnaryOperator;
* Yields a value within a specified range, which rolls over continuously.
*/
@ThreadSafeMapper
+@Categories({Category.general})
public class CycleRange implements IntUnaryOperator {
private final int minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Div.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Div.java
index 92ccc3865..ae3fedece 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Div.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Div.java
@@ -15,6 +15,8 @@
*/
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Description;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
@@ -22,6 +24,7 @@ import java.util.function.IntUnaryOperator;
@Description("divides the operand by an integer and returns the whole part")
@ThreadSafeMapper
+@Categories({Category.general})
public class Div implements IntUnaryOperator {
private final int divisor;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashInterval.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashInterval.java
index 212669d8c..08c93d67b 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashInterval.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashInterval.java
@@ -17,12 +17,15 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.api.errors.BasicError;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.Example;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class HashInterval implements IntUnaryOperator {
private final int minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRange.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRange.java
index 6cb2c67a3..17b796da3 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRange.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRange.java
@@ -17,11 +17,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
import io.nosqlbench.api.errors.BasicError;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class HashRange implements IntUnaryOperator {
private final int minValue;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRangeScaled.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRangeScaled.java
index a3a3826cb..151208d56 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRangeScaled.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/HashRangeScaled.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class HashRangeScaled implements IntUnaryOperator {
private final Hash hash = new Hash();
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Max.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Max.java
index 4a64b877b..d436605fb 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Max.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Max.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Max implements IntUnaryOperator {
private final int max;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Min.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Min.java
index a0a1675db..0abf05b94 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Min.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Min.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Min implements IntUnaryOperator {
private final int min;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mod.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mod.java
index b5211a58d..e68eb6c96 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mod.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mod.java
@@ -15,11 +15,14 @@
*/
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Mod implements IntUnaryOperator {
private final int modulo;
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mul.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mul.java
index c2814be7a..5aa484bab 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mul.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Mul.java
@@ -16,11 +16,14 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class Mul implements IntUnaryOperator {
public Mul(int addend) {
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Scale.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Scale.java
deleted file mode 100644
index d93b23e71..000000000
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/Scale.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2022 nosqlbench
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.nosqlbench.virtdata.library.basics.shared.unary_int;
-
-import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
-
-import java.util.function.IntUnaryOperator;
-
-/**
- * Scale the input by the factor provided.
- * @deprecated use Mul(...) instead
- */
-@ThreadSafeMapper
-public class Scale implements IntUnaryOperator {
-
- private final double scaleFactor;
-
- public Scale(double scaleFactor) {
- this.scaleFactor = scaleFactor;
- }
-
- @Override
- public int applyAsInt(int operand) {
- return (int) (scaleFactor * (double) operand);
- }
-}
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/SignedHash.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/SignedHash.java
index df56fe709..31d93ed95 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/SignedHash.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_int/SignedHash.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_int;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import io.nosqlbench.virtdata.murmur.Murmur3F;
@@ -23,6 +25,7 @@ import java.nio.ByteBuffer;
import java.util.function.IntUnaryOperator;
@ThreadSafeMapper
+@Categories({Category.general})
public class SignedHash implements IntUnaryOperator {
private final ThreadLocal murmur3f_TL = ThreadLocal.withInitial(Murmur3F::new);
diff --git a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_string/ToString.java b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_string/ToString.java
index 9a922b349..2f584a453 100644
--- a/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_string/ToString.java
+++ b/virtdata-lib-basics/src/main/java/io/nosqlbench/virtdata/library/basics/shared/unary_string/ToString.java
@@ -16,6 +16,8 @@
package io.nosqlbench.virtdata.library.basics.shared.unary_string;
+import io.nosqlbench.virtdata.api.annotations.Categories;
+import io.nosqlbench.virtdata.api.annotations.Category;
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
import java.util.function.Function;
@@ -26,6 +28,7 @@ import java.util.function.Function;
* String.valueOf() to the result.
*/
@ThreadSafeMapper
+@Categories({Category.conversion})
public class ToString implements Function