v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
Public Member Functions | |
RegExpCompiler (int capture_count, bool ignore_case, bool is_ascii, Zone *zone) | |
int | AllocateRegister () |
RegExpEngine::CompilationResult | Assemble (RegExpMacroAssembler *assembler, RegExpNode *start, int capture_count, Handle< String > pattern) |
void | AddWork (RegExpNode *node) |
RegExpMacroAssembler * | macro_assembler () |
EndNode * | accept () |
int | recursion_depth () |
void | IncrementRecursionDepth () |
void | DecrementRecursionDepth () |
void | SetRegExpTooBig () |
bool | ignore_case () |
bool | ascii () |
FrequencyCollator * | frequency_collator () |
int | current_expansion_factor () |
void | set_current_expansion_factor (int value) |
Zone * | zone () const |
Static Public Attributes | |
static const int | kImplementationOffset = 0 |
static const int | kNumberOfRegistersOffset = 0 |
static const int | kCodeOffset = 1 |
static const int | kMaxRecursion = 100 |
static const int | kNoRegister = -1 |
Definition at line 1078 of file jsregexp.cc.
RegExpCompiler | ( | int | capture_count, |
bool | ignore_case, | ||
bool | is_ascii, | ||
Zone * | zone | ||
) |
Definition at line 1158 of file jsregexp.cc.
References EndNode::ACCEPT, ASSERT, RegExpMacroAssembler::kMaxRegister, and RegExpCompiler::zone().
|
inline |
Definition at line 1103 of file jsregexp.cc.
Referenced by RegExpEngine::Compile().
|
inline |
Definition at line 1096 of file jsregexp.cc.
Referenced by RegExpNode::LimitVersions().
|
inline |
Definition at line 1083 of file jsregexp.cc.
References RegExpMacroAssembler::kMaxRegister.
Referenced by RegExpAssertion::ToNode(), RegExpQuantifier::ToNode(), and RegExpLookahead::ToNode().
|
inline |
Definition at line 1113 of file jsregexp.cc.
Referenced by Trace::AdvanceCurrentPositionInTrace(), BoyerMooreLookahead::BoyerMooreLookahead(), TextNode::Emit(), ChoiceNode::Emit(), RegExpNode::EmitQuickCheck(), TextNode::GetQuickCheckDetails(), and TextNode::GetSuccessorOfOmnivorousTextNode().
RegExpEngine::CompilationResult Assemble | ( | RegExpMacroAssembler * | assembler, |
RegExpNode * | start, | ||
int | capture_count, | ||
Handle< String > | pattern | ||
) |
Definition at line 1174 of file jsregexp.cc.
References RegExpMacroAssembler::Bind(), Handle< T >::cast(), v8::internal::code(), RegExpNode::Emit(), RegExpMacroAssembler::Fail(), RegExpMacroAssembler::GetCode(), Heap::IncreaseTotalRegexpCodeGenerated(), Heap::isolate(), RegExpImpl::kRegExpExecutableMemoryLimit, RegExpImpl::kRegWxpCompiledLimit, RegExpCompiler::macro_assembler(), Isolate::memory_allocator(), v8::internal::NULL, RegExpMacroAssembler::PushBacktrack(), RegExpMacroAssembler::set_slow_safe(), MemoryAllocator::SizeExecutable(), and Heap::total_regexp_code_generated().
Referenced by RegExpEngine::Compile().
|
inline |
Definition at line 1116 of file jsregexp.cc.
|
inline |
Definition at line 1108 of file jsregexp.cc.
|
inline |
Definition at line 1114 of file jsregexp.cc.
Referenced by RegExpEngine::Compile().
|
inline |
Definition at line 1112 of file jsregexp.cc.
Referenced by TextNode::Emit(), BackReferenceNode::Emit(), TextNode::FillInBMInfo(), and TextNode::GetQuickCheckDetails().
|
inline |
Definition at line 1107 of file jsregexp.cc.
Referenced by RecursionCheck::RecursionCheck().
|
inline |
Definition at line 1102 of file jsregexp.cc.
Referenced by RegExpCompiler::Assemble(), ActionNode::Emit(), AssertionNode::Emit(), BackReferenceNode::Emit(), EndNode::Emit(), NegativeSubmatchSuccess::Emit(), ChoiceNode::Emit(), LoopChoiceNode::Emit(), RegExpNode::EmitQuickCheck(), Trace::Flush(), and RegExpNode::LimitVersions().
|
inline |
Definition at line 1106 of file jsregexp.cc.
Referenced by RegExpNode::LimitVersions().
|
inline |
Definition at line 1117 of file jsregexp.cc.
Referenced by RegExpExpansionLimiter::RegExpExpansionLimiter(), and RegExpExpansionLimiter::~RegExpExpansionLimiter().
|
inline |
Definition at line 1110 of file jsregexp.cc.
Referenced by Trace::AdvanceCurrentPositionInTrace(), and TextNode::Emit().
|
inline |
Definition at line 1121 of file jsregexp.cc.
Referenced by Trace::Flush(), RegExpCompiler::RegExpCompiler(), RegExpDisjunction::ToNode(), RegExpAssertion::ToNode(), RegExpCharacterClass::ToNode(), RegExpAtom::ToNode(), RegExpText::ToNode(), RegExpQuantifier::ToNode(), RegExpLookahead::ToNode(), and RegExpBackReference::ToNode().
|
static |
Definition at line 1100 of file jsregexp.cc.
|
static |
Definition at line 1098 of file jsregexp.cc.
|
static |
Definition at line 1105 of file jsregexp.cc.
Referenced by RegExpEngine::Compile(), ActionNode::EatsAtLeast(), TextNode::EatsAtLeast(), AssertionNode::EatsAtLeast(), BackReferenceNode::EatsAtLeast(), NegativeLookaheadChoiceNode::EatsAtLeast(), ChoiceNode::EatsAtLeastHelper(), LoopChoiceNode::FillInBMInfo(), ChoiceNode::GreedyLoopTextLengthForAlternative(), and RegExpNode::LimitVersions().
|
static |
Definition at line 1123 of file jsregexp.cc.
Referenced by ActionNode::Emit(), and RegExpQuantifier::ToNode().
|
static |
Definition at line 1099 of file jsregexp.cc.