V8 Project
|
#include <jsregexp.h>
Public Member Functions | |
BoyerMooreLookahead (int length, RegExpCompiler *compiler, Zone *zone) | |
int | length () |
int | max_char () |
RegExpCompiler * | compiler () |
int | Count (int map_number) |
BoyerMoorePositionInfo * | at (int i) |
void | Set (int map_number, int character) |
void | SetInterval (int map_number, const Interval &interval) |
void | SetAll (int map_number) |
void | SetRest (int from_map) |
void | EmitSkipInstructions (RegExpMacroAssembler *masm) |
![]() | |
INLINE (void *operator new(size_t size, Zone *zone)) | |
void | operator delete (void *, size_t) |
void | operator delete (void *pointer, Zone *zone) |
Private Member Functions | |
int | GetSkipTable (int min_lookahead, int max_lookahead, Handle< ByteArray > boolean_skip_table) |
bool | FindWorthwhileInterval (int *from, int *to) |
int | FindBestInterval (int max_number_of_chars, int old_biggest_points, int *from, int *to) |
Private Attributes | |
int | length_ |
RegExpCompiler * | compiler_ |
int | max_char_ |
ZoneList< BoyerMoorePositionInfo * > * | bitmaps_ |
Definition at line 1286 of file jsregexp.h.
v8::internal::BoyerMooreLookahead::BoyerMooreLookahead | ( | int | length, |
RegExpCompiler * | compiler, | ||
Zone * | zone | ||
) |
Definition at line 3633 of file jsregexp.cc.
References bitmaps_, compiler(), v8::internal::String::kMaxOneByteCharCode, v8::internal::String::kMaxUtf16CodeUnit, length(), max_char_, and v8::internal::RegExpCompiler::one_byte().
|
inline |
Definition at line 1298 of file jsregexp.h.
References bitmaps_.
Referenced by v8::internal::AssertionNode::EmitBoundaryCheck().
|
inline |
Definition at line 1292 of file jsregexp.h.
References compiler_.
Referenced by BoyerMooreLookahead(), and v8::internal::TextNode::FillInBMInfo().
Definition at line 1294 of file jsregexp.h.
References bitmaps_.
Referenced by FindBestInterval().
void v8::internal::BoyerMooreLookahead::EmitSkipInstructions | ( | RegExpMacroAssembler * | masm | ) |
Definition at line 3754 of file jsregexp.cc.
References v8::internal::RegExpMacroAssembler::AdvanceCurrentPosition(), v8::internal::RegExpMacroAssembler::Bind(), bitmaps_, v8::internal::RegExpMacroAssembler::CheckBitInTable(), v8::internal::RegExpMacroAssembler::CheckCharacter(), v8::internal::RegExpMacroAssembler::CheckCharacterAfterAnd(), DCHECK, v8::internal::Isolate::factory(), FindWorthwhileInterval(), GetSkipTable(), v8::internal::RegExpMacroAssembler::GoTo(), v8::internal::Zone::isolate(), v8::internal::RegExpMacroAssembler::kTableMask, v8::internal::RegExpMacroAssembler::kTableSize, v8::internal::RegExpMacroAssembler::LoadCurrentCharacter(), map, max_char_, v8::internal::TENURED, and v8::internal::RegExpMacroAssembler::zone().
Referenced by v8::internal::ChoiceNode::EmitOptimizedUnanchoredSearch().
|
private |
Definition at line 3674 of file jsregexp.cc.
References bitmaps_, compiler_, Count(), v8::internal::FrequencyCollator::Frequency(), v8::internal::RegExpCompiler::frequency_collator(), v8::internal::RegExpMacroAssembler::kTableSize, length_, map, v8::internal::RegExpCompiler::one_byte(), and to().
Referenced by FindWorthwhileInterval().
Definition at line 3652 of file jsregexp.cc.
References FindBestInterval(), and to().
Referenced by EmitSkipInstructions().
|
private |
Definition at line 3727 of file jsregexp.cc.
References bitmaps_, v8::internal::RegExpMacroAssembler::kTableSize, and map.
Referenced by EmitSkipInstructions().
|
inline |
Definition at line 1290 of file jsregexp.h.
References length_.
Referenced by BoyerMooreLookahead(), and v8::internal::TextNode::FillInBMInfo().
|
inline |
Definition at line 1291 of file jsregexp.h.
References max_char_.
Referenced by v8::internal::TextNode::FillInBMInfo().
Definition at line 1300 of file jsregexp.h.
References bitmaps_, max_char_, and v8::internal::BoyerMoorePositionInfo::Set().
Referenced by v8::internal::TextNode::FillInBMInfo().
|
inline |
Definition at line 1316 of file jsregexp.h.
References bitmaps_.
Referenced by v8::internal::TextNode::FillInBMInfo(), and SetRest().
|
inline |
Definition at line 1306 of file jsregexp.h.
References bitmaps_, v8::internal::Interval::from(), max_char_, v8::internal::BoyerMoorePositionInfo::SetInterval(), and v8::internal::Interval::to().
Referenced by v8::internal::TextNode::FillInBMInfo().
|
inline |
Definition at line 1320 of file jsregexp.h.
References length_, and SetAll().
Referenced by v8::internal::ActionNode::FillInBMInfo(), v8::internal::BackReferenceNode::FillInBMInfo(), v8::internal::ChoiceNode::FillInBMInfo(), and v8::internal::LoopChoiceNode::FillInBMInfo().
|
private |
Definition at line 1334 of file jsregexp.h.
Referenced by at(), BoyerMooreLookahead(), Count(), EmitSkipInstructions(), FindBestInterval(), GetSkipTable(), Set(), SetAll(), and SetInterval().
|
private |
Definition at line 1331 of file jsregexp.h.
Referenced by compiler(), and FindBestInterval().
|
private |
Definition at line 1330 of file jsregexp.h.
Referenced by FindBestInterval(), length(), and SetRest().
|
private |
Definition at line 1333 of file jsregexp.h.
Referenced by BoyerMooreLookahead(), EmitSkipInstructions(), max_char(), Set(), and SetInterval().