// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "query_term_decoder.h" #include #include namespace search { using namespace search::streaming; QueryTermSimple::UP QueryTermDecoder::decodeTerm(QueryPacketT term) { QueryTermSimple::UP result; QueryNodeResultFactory factory; Query query(factory, term); if (query.valid() && (dynamic_cast(&query.getRoot()))) { result.reset(static_cast(Query::steal(std::move(query)).release())); } else { throw vespalib::IllegalStateException("Failed decoding query term"); } return result; } }