private static Values readValuesOf(Onnx.TensorProto tensorProto) {
        var elemType = Onnx.TensorProto.DataType.forNumber(tensorProto.getDataType());
        if (tensorProto.hasRawData()) {
            switch (elemType) {
                case BOOL: return new RawBoolValues(tensorProto);
                case FLOAT: return new RawFloatValues(tensorProto);
                case DOUBLE: return new RawDoubleValues(tensorProto);
                case INT32: return new RawIntValues(tensorProto);
                case INT64: return new RawLongValues(tensorProto);
            }
        } else {
            switch (elemType) {
                case FLOAT: return new FloatValues(tensorProto);
                case DOUBLE: return new DoubleValues(tensorProto);
                case INT32: return new IntValues(tensorProto);
                case INT64: return new LongValues(tensorProto);
            }
        }
        throw new IllegalArgumentException("Cannot convert a tensor with elements of type " +
                tensorProto.getDataType() + " to a Vespa tensor");
    }
Converts Onnx tensors into Vespa tensors.

@author lesters
model-integration/src/main/java/ai/vespa/rankingexpression/importer/onnx/TensorConverter.java