6 #include <RobotAPI/interface/armem/query.h>
17 template <
class _CoreSegmentT,
class _ResultCoreSegmentT,
class _ChildProcessorT>
49 const armem::query::data::CoreSegmentQuery& query,
52 if (
auto q =
dynamic_cast<const armem::query::data::core::All*
>(&query))
56 else if (
auto q =
dynamic_cast<const armem::query::data::core::Single*
>(&query))
60 else if (
auto q =
dynamic_cast<const armem::query::data::core::Regex*
>(&query))
71 const armem::query::data::core::All& query,
81 const armem::query::data::core::Single& query,
91 const armem::query::data::core::Regex& query,
94 const std::regex regex(query.providerSegmentNameRegex);
98 if (std::regex_search(providerSegment.name(), regex))
100 this->_processResult(result, providerSegment, query);
110 const armem::query::data::CoreSegmentQuery& query)
const
113 if (child ==
nullptr)
115 child = &result.
addProviderSegment(providerSegment.name(), providerSegment.aronType());
117 childProcessor.process(*child, query.providerSegmentQueries, providerSegment);