From c426304c2795258585c1446f11d652094ccff3f5 Mon Sep 17 00:00:00 2001 From: Arne Welzel Date: Wed, 1 Nov 2023 15:00:05 +0100 Subject: [PATCH] Val: Move TablePatternMatcher into detail namespace There's anyway only prototype in the headers, so detail seems better than the public zeek namespace. --- src/Val.cc | 10 ++++------ src/Val.h | 5 ++--- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/Val.cc b/src/Val.cc index 58fae0e3d6..73bfd2dce7 100644 --- a/src/Val.cc +++ b/src/Val.cc @@ -1427,11 +1427,9 @@ static void find_nested_record_types(const TypePtr& t, std::set* fo } } -using PatternValPtr = IntrusivePtr; - // Support class for returning multiple values from a table[pattern] // when indexed with a string. -class TablePatternMatcher { +class detail::TablePatternMatcher { public: TablePatternMatcher(const TableVal* _tbl, TypePtr _yield) : tbl(_tbl) { vtype = make_intrusive(std::move(_yield)); @@ -1465,7 +1463,7 @@ private: std::vector matcher_yields; }; -VectorValPtr TablePatternMatcher::Lookup(const StringVal* s) { +VectorValPtr detail::TablePatternMatcher::Lookup(const StringVal* s) { auto results = make_intrusive(vtype); if ( ! matcher ) { @@ -1484,7 +1482,7 @@ VectorValPtr TablePatternMatcher::Lookup(const StringVal* s) { return results; } -void TablePatternMatcher::Build() { +void detail::TablePatternMatcher::Build() { matcher_yields.clear(); matcher_yields.push_back(nullptr); @@ -1544,7 +1542,7 @@ void TableVal::Init(TableTypePtr t, bool ordered) { subnets = nullptr; if ( table_type->IsPatternIndex() && table_type->Yield() ) - pattern_matcher = new TablePatternMatcher(this, table_type->Yield()); + pattern_matcher = new detail::TablePatternMatcher(this, table_type->Yield()); table_hash = new detail::CompositeHash(table_type->GetIndices()); if ( ordered ) diff --git a/src/Val.h b/src/Val.h index e0c67e91f8..3b5176849b 100644 --- a/src/Val.h +++ b/src/Val.h @@ -51,6 +51,7 @@ class Frame; class PrefixTable; class CompositeHash; class HashKey; +class TablePatternMatcher; class ValTrace; class ZBody; @@ -718,8 +719,6 @@ protected: TableVal* table; }; -class TablePatternMatcher; - class TableVal final : public Val, public notifier::detail::Modifiable { public: explicit TableVal(TableTypePtr t, detail::AttributesPtr attrs = nullptr); @@ -1039,7 +1038,7 @@ protected: TableValTimer* timer; RobustDictIterator* expire_iterator; detail::PrefixTable* subnets; - TablePatternMatcher* pattern_matcher = nullptr; + detail::TablePatternMatcher* pattern_matcher = nullptr; ValPtr def_val; detail::ExprPtr change_func; std::string broker_store;