summaryrefslogtreecommitdiffstats
path: root/vespajlib
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-06-08 22:48:46 +0200
committerGitHub <noreply@github.com>2022-06-08 22:48:46 +0200
commit583332f6acf5ac91c3cf3e8de23980c2818b5284 (patch)
tree3dff4a0456b3672f7b63de0fefb5c5beaa81d3b5 /vespajlib
parentf954bda9c7773bb28f6005b15be2b512b83bc33e (diff)
parent61d512485d2251a9937b2a5aa1b2327228495077 (diff)
Merge pull request #22996 from vespa-engine/lesters/short-tensor-format-as-default
Lesters/short tensor format as default MERGEOK
Diffstat (limited to 'vespajlib')
-rw-r--r--vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java b/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java
index d7758f309db..b683519988c 100644
--- a/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java
+++ b/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java
@@ -109,11 +109,15 @@ public class JsonFormat {
private static void encodeValues(IndexedTensor tensor, Cursor cursor, long[] indexes, int dimension) {
DimensionSizes sizes = tensor.dimensionSizes();
- for (indexes[dimension] = 0; indexes[dimension] < sizes.size(dimension); ++indexes[dimension]) {
- if (dimension < (sizes.dimensions() - 1)) {
- encodeValues(tensor, cursor.addArray(), indexes, dimension + 1);
- } else {
- cursor.addDouble(tensor.get(indexes));
+ if (indexes.length == 0) {
+ cursor.addDouble(tensor.get(0));
+ } else {
+ for (indexes[dimension] = 0; indexes[dimension] < sizes.size(dimension); ++indexes[dimension]) {
+ if (dimension < (sizes.dimensions() - 1)) {
+ encodeValues(tensor, cursor.addArray(), indexes, dimension + 1);
+ } else {
+ cursor.addDouble(tensor.get(indexes));
+ }
}
}
}