#include "re2/prefilter_tree.h"
#include <stddef.h>
#include <algorithm>
#include <cmath>
#include <string>
#include <utility>
#include <vector>
#include "absl/log/absl_check.h"
#include "absl/log/absl_log.h"
#include "absl/strings/str_format.h"
#include "re2/prefilter.h"
namespace re2 {
static const bool ExtraDebug = …;
PrefilterTree::PrefilterTree()
: … { … }
PrefilterTree::PrefilterTree(int min_atom_len)
: … { … }
PrefilterTree::~PrefilterTree() { … }
void PrefilterTree::Add(Prefilter* prefilter) { … }
void PrefilterTree::Compile(std::vector<std::string>* atom_vec) { … }
Prefilter* PrefilterTree::CanonicalNode(NodeSet* nodes, Prefilter* node) { … }
bool PrefilterTree::KeepNode(Prefilter* node) const { … }
void PrefilterTree::AssignUniqueIds(NodeSet* nodes,
std::vector<std::string>* atom_vec) { … }
void PrefilterTree::RegexpsGivenStrings(
const std::vector<int>& matched_atoms,
std::vector<int>* regexps) const { … }
void PrefilterTree::PropagateMatch(const std::vector<int>& atom_ids,
IntMap* regexps) const { … }
void PrefilterTree::PrintPrefilter(int regexpid) { … }
void PrefilterTree::PrintDebugInfo(NodeSet* nodes) { … }
std::string PrefilterTree::DebugNodeString(Prefilter* node) const { … }
}