aboutsummaryrefslogtreecommitdiffstats
path: root/eval
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-11-21 11:21:57 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2022-11-21 11:21:57 +0000
commitd520b7a8c4dd4a08e4b544052a81e5c21ac2a5e8 (patch)
tree31cec874bdcfb8607c6c3ae61481a3be3584f0d2 /eval
parente6345968176bde87ac478b8cea90ed451cbf03d1 (diff)
Just use get_const_double_value to generate key
Diffstat (limited to 'eval')
-rw-r--r--eval/src/vespa/eval/eval/basic_nodes.h1
-rw-r--r--eval/src/vespa/eval/eval/delete_node.cpp12
-rw-r--r--eval/src/vespa/eval/eval/delete_node.h6
-rw-r--r--eval/src/vespa/eval/eval/key_gen.cpp19
-rw-r--r--eval/src/vespa/eval/eval/key_gen.h7
-rw-r--r--eval/src/vespa/eval/eval/node_tools.cpp1
-rw-r--r--eval/src/vespa/eval/eval/node_traverser.h7
-rw-r--r--eval/src/vespa/eval/eval/node_types.h6
-rw-r--r--eval/src/vespa/eval/eval/node_visitor.h6
-rw-r--r--eval/src/vespa/eval/eval/tensor_nodes.cpp8
-rw-r--r--eval/src/vespa/eval/eval/tensor_nodes.h8
-rw-r--r--eval/src/vespa/eval/eval/tensor_spec.cpp6
-rw-r--r--eval/src/vespa/eval/eval/tensor_spec.h17
13 files changed, 41 insertions, 63 deletions
diff --git a/eval/src/vespa/eval/eval/basic_nodes.h b/eval/src/vespa/eval/eval/basic_nodes.h
index af6ee24289a..b5cf36b853b 100644
--- a/eval/src/vespa/eval/eval/basic_nodes.h
+++ b/eval/src/vespa/eval/eval/basic_nodes.h
@@ -123,7 +123,6 @@ public:
bool is_const_double() const override { return true; }
double get_const_double_value() const override { return hash2d(_value); }
const vespalib::string &value() const { return _value; }
- uint64_t hash() const { return hashValue(_value.data(), _value.size()); }
vespalib::string dump(DumpContext &) const override {
return as_quoted_string(_value);
}
diff --git a/eval/src/vespa/eval/eval/delete_node.cpp b/eval/src/vespa/eval/eval/delete_node.cpp
index fb391fef5b0..f57c7f2bd68 100644
--- a/eval/src/vespa/eval/eval/delete_node.cpp
+++ b/eval/src/vespa/eval/eval/delete_node.cpp
@@ -4,15 +4,14 @@
#include "node_visitor.h"
#include "node_traverser.h"
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
namespace {
struct ChildReaper : public NodeTraverser, public NodeHandler {
- virtual void handle(nodes::Node_UP) override {}
- virtual bool open(const nodes::Node &) override { return true; }
- virtual void close(const nodes::Node &node) override {
+ void handle(nodes::Node_UP) override {}
+ bool open(const nodes::Node &) override { return true; }
+ void close(const nodes::Node &node) override {
nodes::Node &mutable_node = const_cast<nodes::Node&>(node);
mutable_node.detach_children(*this);
}
@@ -29,5 +28,4 @@ delete_node(nodes::Node_UP node)
}
}
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/delete_node.h b/eval/src/vespa/eval/eval/delete_node.h
index 376eba0653f..3049a8d6706 100644
--- a/eval/src/vespa/eval/eval/delete_node.h
+++ b/eval/src/vespa/eval/eval/delete_node.h
@@ -4,8 +4,7 @@
#include "basic_nodes.h"
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
/**
* Function used to delete an AST with arbitrary depth without
@@ -15,5 +14,4 @@ namespace eval {
**/
void delete_node(nodes::Node_UP node);
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/key_gen.cpp b/eval/src/vespa/eval/eval/key_gen.cpp
index 6bf61f5336e..245f872ec69 100644
--- a/eval/src/vespa/eval/eval/key_gen.cpp
+++ b/eval/src/vespa/eval/eval/key_gen.cpp
@@ -17,14 +17,23 @@ struct KeyGen : public NodeVisitor, public NodeTraverser {
void add_double(double value) { key.append(&value, sizeof(value)); }
void add_size(size_t value) { key.append(&value, sizeof(value)); }
void add_int(int value) { key.append(&value, sizeof(value)); }
- void add_hash(uint32_t value) { key.append(&value, sizeof(value)); }
void add_byte(uint8_t value) { key.append(&value, sizeof(value)); }
// visit
- void visit(const Number &node) override { add_byte( 1); add_double(node.value()); }
- void visit(const Symbol &node) override { add_byte( 2); add_int(node.id()); }
- void visit(const String &node) override { add_byte( 3); add_hash(node.hash()); }
- void visit(const In &node) override { add_byte( 4);
+ void visit(const Number &node) override {
+ add_byte( 1);
+ add_double(node.value());
+ }
+ void visit(const Symbol &node) override {
+ add_byte( 2);
+ add_int(node.id());
+ }
+ void visit(const String &node) override {
+ add_byte( 3);
+ add_double(node.get_const_double_value());
+ }
+ void visit(const In &node) override {
+ add_byte( 4);
add_size(node.num_entries());
for (size_t i = 0; i < node.num_entries(); ++i) {
add_double(node.get_entry(i).get_const_double_value());
diff --git a/eval/src/vespa/eval/eval/key_gen.h b/eval/src/vespa/eval/eval/key_gen.h
index c7bbf1dbd8e..868dfcf6270 100644
--- a/eval/src/vespa/eval/eval/key_gen.h
+++ b/eval/src/vespa/eval/eval/key_gen.h
@@ -4,8 +4,7 @@
#include <vespa/vespalib/stllike/string.h>
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
class Function;
enum class PassParams : uint8_t;
@@ -16,6 +15,4 @@ enum class PassParams : uint8_t;
**/
vespalib::string gen_key(const Function &function, PassParams pass_params);
-} // namespace vespalib::eval
-} // namespace vespalib
-
+}
diff --git a/eval/src/vespa/eval/eval/node_tools.cpp b/eval/src/vespa/eval/eval/node_tools.cpp
index 477079f0d7b..a2a7847f50d 100644
--- a/eval/src/vespa/eval/eval/node_tools.cpp
+++ b/eval/src/vespa/eval/eval/node_tools.cpp
@@ -4,7 +4,6 @@
#include <vespa/eval/eval/node_traverser.h>
#include <vespa/eval/eval/node_visitor.h>
-using namespace vespalib::eval;
using namespace vespalib::eval::nodes;
namespace vespalib::eval {
diff --git a/eval/src/vespa/eval/eval/node_traverser.h b/eval/src/vespa/eval/eval/node_traverser.h
index 06c10215bc6..0143d4d58ba 100644
--- a/eval/src/vespa/eval/eval/node_traverser.h
+++ b/eval/src/vespa/eval/eval/node_traverser.h
@@ -4,8 +4,7 @@
#include "basic_nodes.h"
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
/**
* Interface used when traversing nodes. The open function is called
@@ -23,6 +22,4 @@ struct NodeTraverser {
virtual ~NodeTraverser() {}
};
-} // namespace vespalib::eval
-} // namespace vespalib
-
+}
diff --git a/eval/src/vespa/eval/eval/node_types.h b/eval/src/vespa/eval/eval/node_types.h
index f26ddf2321b..643afd319f2 100644
--- a/eval/src/vespa/eval/eval/node_types.h
+++ b/eval/src/vespa/eval/eval/node_types.h
@@ -5,8 +5,7 @@
#include "value_type.h"
#include <map>
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
namespace nodes { struct Node; }
class Function;
@@ -50,5 +49,4 @@ public:
}
};
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/node_visitor.h b/eval/src/vespa/eval/eval/node_visitor.h
index c212612bd5f..0471ba0db68 100644
--- a/eval/src/vespa/eval/eval/node_visitor.h
+++ b/eval/src/vespa/eval/eval/node_visitor.h
@@ -7,8 +7,7 @@
#include "operator_nodes.h"
#include "call_nodes.h"
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
/**
* Interface implemented by Node visitors to resolve the actual type
@@ -160,5 +159,4 @@ struct EmptyNodeVisitor : NodeVisitor {
void visit(const nodes::Hamming &) override {}
};
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/tensor_nodes.cpp b/eval/src/vespa/eval/eval/tensor_nodes.cpp
index ae38252a72c..f78a2f99303 100644
--- a/eval/src/vespa/eval/eval/tensor_nodes.cpp
+++ b/eval/src/vespa/eval/eval/tensor_nodes.cpp
@@ -3,9 +3,7 @@
#include "tensor_nodes.h"
#include "node_visitor.h"
-namespace vespalib {
-namespace eval {
-namespace nodes {
+namespace vespalib::eval::nodes {
void TensorMap ::accept(NodeVisitor &visitor) const { visitor.visit(*this); }
void TensorJoin ::accept(NodeVisitor &visitor) const { visitor.visit(*this); }
@@ -18,6 +16,4 @@ void TensorCreate ::accept(NodeVisitor &visitor) const { visitor.visit(*this);
void TensorLambda ::accept(NodeVisitor &visitor) const { visitor.visit(*this); }
void TensorPeek ::accept(NodeVisitor &visitor) const { visitor.visit(*this); }
-} // namespace vespalib::eval::nodes
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/tensor_nodes.h b/eval/src/vespa/eval/eval/tensor_nodes.h
index 2288740fab9..72840e0f610 100644
--- a/eval/src/vespa/eval/eval/tensor_nodes.h
+++ b/eval/src/vespa/eval/eval/tensor_nodes.h
@@ -12,9 +12,7 @@
#include <vector>
#include <map>
-namespace vespalib {
-namespace eval {
-namespace nodes {
+namespace vespalib::eval::nodes {
class TensorMap : public Node {
private:
@@ -414,6 +412,4 @@ public:
}
};
-} // namespace vespalib::eval::nodes
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/tensor_spec.cpp b/eval/src/vespa/eval/eval/tensor_spec.cpp
index 223e32ce04f..187442941a2 100644
--- a/eval/src/vespa/eval/eval/tensor_spec.cpp
+++ b/eval/src/vespa/eval/eval/tensor_spec.cpp
@@ -14,8 +14,7 @@
#include <vespa/vespalib/data/slime/slime.h>
#include <ostream>
-namespace vespalib {
-namespace eval {
+namespace vespalib::eval {
namespace {
@@ -393,5 +392,4 @@ TensorSpec::diff(const TensorSpec &lhs, const vespalib::string &lhs_desc,
return table.to_string();
}
-} // namespace vespalib::eval
-} // namespace vespalib
+}
diff --git a/eval/src/vespa/eval/eval/tensor_spec.h b/eval/src/vespa/eval/eval/tensor_spec.h
index ef1a56cb6f0..363b8464a24 100644
--- a/eval/src/vespa/eval/eval/tensor_spec.h
+++ b/eval/src/vespa/eval/eval/tensor_spec.h
@@ -7,16 +7,12 @@
#include <memory>
#include <map>
-namespace vespalib {
+namespace vespalib::slime {
+ struct Cursor;
+ struct Inspector;
+}
-namespace slime {
-
-struct Cursor;
-struct Inspector;
-
-} // namespace vespalib::slime
-
-namespace eval {
+namespace vespalib::eval {
struct Value;
@@ -86,5 +82,4 @@ public:
bool operator==(const TensorSpec &lhs, const TensorSpec &rhs);
std::ostream &operator<<(std::ostream &out, const TensorSpec &tensor);
-} // namespace vespalib::eval
-} // namespace vespalib
+}