#include <regexp.h>
Definition at line 1096 of file regexp.h.
◆ BoyerMoorePositionInfo()
dart::BoyerMoorePositionInfo::BoyerMoorePositionInfo |
( |
Zone * |
zone | ) |
|
|
inlineexplicit |
Definition at line 1098 of file regexp.h.
1099 : map_(
new(zone) ZoneGrowableArray<bool>(
kMapSize)),
1100 map_count_(0),
1107 }
1108 }
static constexpr intptr_t kMapSize
◆ at()
bool & dart::BoyerMoorePositionInfo::at |
( |
intptr_t |
i | ) |
|
|
inline |
Definition at line 1110 of file regexp.h.
1110{
return (*map_)[
i]; }
◆ is_non_word()
bool dart::BoyerMoorePositionInfo::is_non_word |
( |
| ) |
|
|
inline |
◆ is_word()
bool dart::BoyerMoorePositionInfo::is_word |
( |
| ) |
|
|
inline |
◆ map_count()
intptr_t dart::BoyerMoorePositionInfo::map_count |
( |
| ) |
const |
|
inline |
Definition at line 1115 of file regexp.h.
1115{ return map_count_; }
◆ Set()
void dart::BoyerMoorePositionInfo::Set |
( |
intptr_t |
character | ) |
|
Definition at line 2788 of file regexp.cc.
2788 {
2790}
void SetInterval(const Interval &interval)
◆ SetAll()
void dart::BoyerMoorePositionInfo::SetAll |
( |
| ) |
|
◆ SetInterval()
void dart::BoyerMoorePositionInfo::SetInterval |
( |
const Interval & |
interval | ) |
|
Definition at line 2792 of file regexp.cc.
2792 {
2796 surrogate_ =
2798 if (interval.to() - interval.from() >=
kMapSize - 1) {
2803 }
2804 return;
2805 }
2806 for (intptr_t
i = interval.from();
i <= interval.to();
i++) {
2807 intptr_t mod_character = (
i &
kMask);
2808 if (!map_->
At(mod_character)) {
2809 map_count_++;
2810 (*map_)[mod_character] = true;
2811 }
2812 if (map_count_ ==
kMapSize)
return;
2813 }
2814}
const T & At(intptr_t index) const
static constexpr intptr_t kMask
static constexpr intptr_t kWordRangeCount
static constexpr intptr_t kSurrogateRangeCount
static constexpr int32_t kSpaceRanges[]
ContainedInLattice AddRange(ContainedInLattice containment, const int32_t *ranges, intptr_t ranges_length, Interval new_range)
static constexpr int32_t kWordRanges[]
static constexpr int32_t kSurrogateRanges[]
static constexpr intptr_t kSpaceRangeCount
static constexpr intptr_t kDigitRangeCount
static constexpr int32_t kDigitRanges[]
◆ kMapSize
constexpr intptr_t dart::BoyerMoorePositionInfo::kMapSize = 128 |
|
staticconstexpr |
◆ kMask
constexpr intptr_t dart::BoyerMoorePositionInfo::kMask = kMapSize - 1 |
|
staticconstexpr |
The documentation for this class was generated from the following files:
- third_party/dart-lang/sdk/runtime/vm/regexp.h
- third_party/dart-lang/sdk/runtime/vm/regexp.cc