From 0fc312dd2f13d290385f2bf6109132db05b6476a Mon Sep 17 00:00:00 2001 From: HÃ¥vard Pettersen Date: Tue, 28 Nov 2017 13:59:25 +0000 Subject: getType->type, sum->as_double --- .../dense_tensor_builder/dense_tensor_builder_test.cpp | 2 +- .../sparse_tensor_builder/sparse_tensor_builder_test.cpp | 2 +- eval/src/vespa/eval/tensor/default_tensor_engine.cpp | 16 ++++++++-------- eval/src/vespa/eval/tensor/dense/dense_tensor_view.cpp | 6 +++--- eval/src/vespa/eval/tensor/dense/dense_tensor_view.h | 4 ++-- .../eval/tensor/serialization/slime_binary_format.cpp | 2 +- .../eval/tensor/serialization/sparse_binary_format.cpp | 2 +- eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp | 6 +++--- eval/src/vespa/eval/tensor/sparse/sparse_tensor.h | 4 ++-- eval/src/vespa/eval/tensor/tensor.h | 4 ---- eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp | 8 ++------ eval/src/vespa/eval/tensor/wrapped_simple_tensor.h | 4 ++-- 12 files changed, 26 insertions(+), 34 deletions(-) (limited to 'eval') diff --git a/eval/src/tests/tensor/dense_tensor_builder/dense_tensor_builder_test.cpp b/eval/src/tests/tensor/dense_tensor_builder/dense_tensor_builder_test.cpp index de6fe4f175a..6f3cdd5f93f 100644 --- a/eval/src/tests/tensor/dense_tensor_builder/dense_tensor_builder_test.cpp +++ b/eval/src/tests/tensor/dense_tensor_builder/dense_tensor_builder_test.cpp @@ -240,7 +240,7 @@ TEST_F("require that dimensions are sorted", Fixture) assertTensor({{"x", 5}, {"y", 3}}, {10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, denseTensor); - EXPECT_EQUAL("tensor(x[5],y[3])", denseTensor.getType().to_spec()); + EXPECT_EQUAL("tensor(x[5],y[3])", denseTensor.type().to_spec()); } diff --git a/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp b/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp index b6d58236c9c..bd3d1ada017 100644 --- a/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp +++ b/eval/src/tests/tensor/sparse_tensor_builder/sparse_tensor_builder_test.cpp @@ -91,7 +91,7 @@ TEST("require that dimensions are extracted") EXPECT_EQUAL("a", dims[0].name); EXPECT_EQUAL("b", dims[1].name); EXPECT_EQUAL("c", dims[2].name); - EXPECT_EQUAL("tensor(a{},b{},c{})", sparseTensor.getType().to_spec()); + EXPECT_EQUAL("tensor(a{},b{},c{})", sparseTensor.type().to_spec()); } TEST_MAIN() { TEST_RUN_ALL(); } diff --git a/eval/src/vespa/eval/tensor/default_tensor_engine.cpp b/eval/src/vespa/eval/tensor/default_tensor_engine.cpp index 2506e6fcf0e..4d9ee7cb6f5 100644 --- a/eval/src/vespa/eval/tensor/default_tensor_engine.cpp +++ b/eval/src/vespa/eval/tensor/default_tensor_engine.cpp @@ -67,7 +67,7 @@ const Value &to_value(std::unique_ptr tensor, Stash &stash) { if (!tensor) { return ErrorValue::instance; } - if (tensor->getType().is_tensor()) { + if (tensor->type().is_tensor()) { return *stash.create(std::move(tensor)); } return stash.create(tensor->as_double()); @@ -218,7 +218,7 @@ DefaultTensorEngine::map(const Value &a, map_fun_t function, Stash &stash) const } else if (auto tensor = a.as_tensor()) { assert(&tensor->engine() == this); const tensor::Tensor &my_a = static_cast(*tensor); - if (!tensor::Tensor::supported({my_a.getType()})) { + if (!tensor::Tensor::supported({my_a.type()})) { return to_default(simple_engine().map(to_simple(a, stash), function, stash), stash); } CellFunctionFunAdapter cell_function(function); @@ -237,7 +237,7 @@ DefaultTensorEngine::join(const Value &a, const Value &b, join_fun_t function, S } else if (auto tensor_b = b.as_tensor()) { assert(&tensor_b->engine() == this); const tensor::Tensor &my_b = static_cast(*tensor_b); - if (!tensor::Tensor::supported({my_b.getType()})) { + if (!tensor::Tensor::supported({my_b.type()})) { return fallback_join(a, b, function, stash); } CellFunctionBindLeftAdapter cell_function(function, a.as_double()); @@ -249,7 +249,7 @@ DefaultTensorEngine::join(const Value &a, const Value &b, join_fun_t function, S assert(&tensor_a->engine() == this); const tensor::Tensor &my_a = static_cast(*tensor_a); if (b.is_double()) { - if (!tensor::Tensor::supported({my_a.getType()})) { + if (!tensor::Tensor::supported({my_a.type()})) { return fallback_join(a, b, function, stash); } CellFunctionBindRightAdapter cell_function(function, b.as_double()); @@ -257,11 +257,11 @@ DefaultTensorEngine::join(const Value &a, const Value &b, join_fun_t function, S } else if (auto tensor_b = b.as_tensor()) { assert(&tensor_b->engine() == this); const tensor::Tensor &my_b = static_cast(*tensor_b); - if (!tensor::Tensor::supported({my_a.getType(), my_b.getType()})) { + if (!tensor::Tensor::supported({my_a.type(), my_b.type()})) { return fallback_join(a, b, function, stash); } if (function == eval::operation::Mul::f) { - if (my_a.getType() == my_b.getType()) { + if (my_a.type() == my_b.type()) { return to_value(my_a.match(my_b), stash); } else { return to_value(my_a.multiply(my_b), stash); @@ -291,14 +291,14 @@ DefaultTensorEngine::reduce(const Value &a, Aggr aggr, const std::vectorengine() == this); const tensor::Tensor &my_a = static_cast(*tensor); - if (!tensor::Tensor::supported({my_a.getType()})) { + if (!tensor::Tensor::supported({my_a.type()})) { return fallback_reduce(a, aggr, dimensions, stash); } switch (aggr) { case Aggr::PROD: return to_value(my_a.reduce(eval::operation::Mul::f, dimensions), stash); case Aggr::SUM: if (dimensions.empty()) { - return stash.create(my_a.sum()); + return stash.create(my_a.as_double()); } else if (dimensions.size() == 1) { return to_value(my_a.sum(dimensions[0]), stash); } else { diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.cpp b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.cpp index 4402b5b0ae0..fc17366ca8d 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.cpp +++ b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.cpp @@ -145,13 +145,13 @@ DenseTensorView::operator==(const DenseTensorView &rhs) const } const eval::ValueType & -DenseTensorView::getType() const +DenseTensorView::type() const { return _typeRef; } double -DenseTensorView::sum() const +DenseTensorView::as_double() const { double result = 0.0; for (const auto &cell : _cellsRef) { @@ -271,7 +271,7 @@ buildAddress(const DenseTensorCellsIterator &itr, TensorSpec::Address &address) TensorSpec DenseTensorView::toSpec() const { - TensorSpec result(getType().to_spec()); + TensorSpec result(type().to_spec()); TensorSpec::Address address; for (CellsIterator itr(_typeRef, _cellsRef); itr.valid(); itr.next()) { buildAddress(itr, address); diff --git a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h index 472cc58ad6b..871f5478cae 100644 --- a/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h +++ b/eval/src/vespa/eval/tensor/dense/dense_tensor_view.h @@ -47,8 +47,8 @@ public: bool operator==(const DenseTensorView &rhs) const; CellsIterator cellsIterator() const { return CellsIterator(_typeRef, _cellsRef); } - virtual const eval::ValueType &getType() const override; - virtual double sum() const override; + virtual const eval::ValueType &type() const override; + virtual double as_double() const override; virtual Tensor::UP add(const Tensor &arg) const override; virtual Tensor::UP subtract(const Tensor &arg) const override; virtual Tensor::UP multiply(const Tensor &arg) const override; diff --git a/eval/src/vespa/eval/tensor/serialization/slime_binary_format.cpp b/eval/src/vespa/eval/tensor/serialization/slime_binary_format.cpp index c7be1580f19..94ca309ecbc 100644 --- a/eval/src/vespa/eval/tensor/serialization/slime_binary_format.cpp +++ b/eval/src/vespa/eval/tensor/serialization/slime_binary_format.cpp @@ -75,7 +75,7 @@ SlimeBinaryFormatSerializer::visit(const TensorAddress &address, void SlimeBinaryFormatSerializer::serialize(const Tensor &tensor) { - eval::ValueType type(tensor.getType()); + eval::ValueType type(tensor.type()); for (const auto & dimension : type.dimensions()) { _dimensions.addString(Memory(dimension.name)); } diff --git a/eval/src/vespa/eval/tensor/serialization/sparse_binary_format.cpp b/eval/src/vespa/eval/tensor/serialization/sparse_binary_format.cpp index bcb95eeed29..bd0c5b25f93 100644 --- a/eval/src/vespa/eval/tensor/serialization/sparse_binary_format.cpp +++ b/eval/src/vespa/eval/tensor/serialization/sparse_binary_format.cpp @@ -77,7 +77,7 @@ void SparseBinaryFormatSerializer::serialize(nbostream &stream, const Tensor &tensor) { - _type = tensor.getType(); + _type = tensor.type(); tensor.accept(*this); stream.putInt1_4Bytes(_type.dimensions().size()); for (const auto &dimension : _type.dimensions()) { diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp index 84aab8826c3..9b1c608cf46 100644 --- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp +++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.cpp @@ -98,13 +98,13 @@ SparseTensor::combineDimensionsWith(const SparseTensor &rhs) const } const eval::ValueType & -SparseTensor::getType() const +SparseTensor::type() const { return _type; } double -SparseTensor::sum() const +SparseTensor::as_double() const { double result = 0.0; for (const auto &cell : _cells) { @@ -235,7 +235,7 @@ buildAddress(const eval::ValueType &type, TensorSpec SparseTensor::toSpec() const { - TensorSpec result(getType().to_spec()); + TensorSpec result(type().to_spec()); TensorSpec::Address address; for (const auto &cell : _cells) { SparseTensorAddressDecoder decoder(cell.first); diff --git a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h index 8f5f8066352..4b00fe96d38 100644 --- a/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h +++ b/eval/src/vespa/eval/tensor/sparse/sparse_tensor.h @@ -41,8 +41,8 @@ public: bool operator==(const SparseTensor &rhs) const; eval::ValueType combineDimensionsWith(const SparseTensor &rhs) const; - virtual const eval::ValueType &getType() const override; - virtual double sum() const override; + virtual const eval::ValueType &type() const override; + virtual double as_double() const override; virtual Tensor::UP add(const Tensor &arg) const override; virtual Tensor::UP subtract(const Tensor &arg) const override; virtual Tensor::UP multiply(const Tensor &arg) const override; diff --git a/eval/src/vespa/eval/tensor/tensor.h b/eval/src/vespa/eval/tensor/tensor.h index 80afbbf52ff..ab859dd7299 100644 --- a/eval/src/vespa/eval/tensor/tensor.h +++ b/eval/src/vespa/eval/tensor/tensor.h @@ -30,10 +30,6 @@ struct Tensor : public eval::Tensor Tensor(); virtual ~Tensor() {} - virtual const eval::ValueType &getType() const = 0; - virtual const eval::ValueType &type() const override { return getType(); } - virtual double sum() const = 0; - virtual double as_double() const final override { return sum(); } virtual Tensor::UP add(const Tensor &arg) const = 0; virtual Tensor::UP subtract(const Tensor &arg) const = 0; virtual Tensor::UP multiply(const Tensor &arg) const = 0; diff --git a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp index 7ad97a6e84e..7d528fdb8a9 100644 --- a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp +++ b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.cpp @@ -30,13 +30,9 @@ WrappedSimpleTensor::toSpec() const } double -WrappedSimpleTensor::sum() const +WrappedSimpleTensor::as_double() const { - double result = 0.0; - for (const auto &cell: _tensor.cells()) { - result += cell.value; - } - return result; + return _tensor.as_double(); } void diff --git a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h index ef3cb6425c1..33357f744b4 100644 --- a/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h +++ b/eval/src/vespa/eval/tensor/wrapped_simple_tensor.h @@ -28,11 +28,11 @@ public: : _space(std::move(tensor)), _tensor(*_space) {} ~WrappedSimpleTensor() {} const eval::SimpleTensor &get() const { return _tensor; } - const eval::ValueType &getType() const override { return _tensor.type(); } + const eval::ValueType &type() const override { return _tensor.type(); } bool equals(const Tensor &arg) const override; vespalib::string toString() const override; eval::TensorSpec toSpec() const override; - double sum() const override; + double as_double() const override; void accept(TensorVisitor &visitor) const override; void print(std::ostream &out) const override; Tensor::UP clone() const override; -- cgit v1.2.3