12 #include "re2/prefilter.h"
30 if (prefilter ==
nullptr)
32 std::queue<re2::Prefilter*> nodes;
33 nodes.push(prefilter.get());
34 while (!nodes.empty()) {
38 if (node->
atom().size() > 9)
49 int size = re.ProgramSize();
52 int rsize = re.ReverseProgramSize();
59 int fanout = re.ProgramFanout(&
histogram);
62 int rfanout = re.ReverseProgramFanout(&
histogram);
66 if (re.NumberOfCapturingGroups() == 0) {
69 RE2::FullMatch(sp, re);
70 RE2::PartialMatch(sp, re);
79 RE2::FullMatch(sp, re, &s);
81 RE2::PartialMatch(sp, re, &
l);
92 RE2::GlobalReplace(&s, re,
"");
95 re.PossibleMatchRange(&
min, &
max, 9);
98 dummy += re.NamedCapturingGroups().size();
99 dummy += re.CapturingGroupNames().size();
117 for (
size_t i = 0;
i <
size;
i++) {
140 for (
size_t i = 0;
i <
size;
i++) {
152 options.set_encoding(
hash & 1 ? RE2::Options::EncodingLatin1
153 : RE2::Options::EncodingUTF8);
165 const char*
ptr =
reinterpret_cast<const char*
>(
data);
166 int len =
static_cast<int>(
size);