summaryrefslogtreecommitdiffstats
path: root/eval
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@yahooinc.com>2022-06-16 13:36:55 +0000
committerHåvard Pettersen <havardpe@yahooinc.com>2022-06-16 13:36:55 +0000
commit2890f01ab086c86d8167eaac8229cb44cb0fe2fa (patch)
tree69a0b9adfc3a2a684b5f62a33e2a185c60e317c7 /eval
parent9990fd125ad30910bf1c2cf5c251d4262a903440 (diff)
enable making string handles directly from numbers
used in peek/slice to avoid having to convert small numbers to strings before resolving the enum values.
Diffstat (limited to 'eval')
-rw-r--r--eval/src/vespa/eval/instruction/generic_peek.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/eval/src/vespa/eval/instruction/generic_peek.cpp b/eval/src/vespa/eval/instruction/generic_peek.cpp
index 426480dc976..b1952cfefb7 100644
--- a/eval/src/vespa/eval/instruction/generic_peek.cpp
+++ b/eval/src/vespa/eval/instruction/generic_peek.cpp
@@ -252,12 +252,10 @@ struct SparsePlan {
SparseState make_state(const Getter &get_child_value) const {
SmallVector<Handle> handles;
SmallVector<string_id> view_addr;
- char buf[24];
for (const auto & dim : lookup_specs) {
if (dim.has_child()) {
int64_t child_value = get_child_value(dim.get_child_idx());
- auto res = std::to_chars(buf, buf + sizeof(buf), child_value, 10);
- handles.emplace_back(vespalib::stringref(buf, res.ptr - buf));
+ handles.push_back(Handle::handle_from_number(child_value));
view_addr.push_back(handles.back().id());
} else {
view_addr.push_back(dim.get_label_name());