![]() |
v8
3.11.10(node0.8.26)
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 926 of file jsregexp.cc.
| RegExpCompiler | ( | int | capture_count, |
| bool | ignore_case, | ||
| bool | is_ascii, | ||
| Zone * | zone | ||
| ) |
Definition at line 1006 of file jsregexp.cc.
References EndNode::ACCEPT, ASSERT, RegExpMacroAssembler::kMaxRegister, and RegExpCompiler::zone().
|
inline |
Definition at line 951 of file jsregexp.cc.
Referenced by RegExpEngine::Compile().
|
inline |
Definition at line 944 of file jsregexp.cc.
Referenced by RegExpNode::LimitVersions().
|
inline |
Definition at line 931 of file jsregexp.cc.
References RegExpMacroAssembler::kMaxRegister.
Referenced by RegExpAssertion::ToNode(), RegExpQuantifier::ToNode(), and RegExpLookahead::ToNode().
|
inline |
Definition at line 961 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 1022 of file jsregexp.cc.
References RegExpMacroAssembler::Bind(), Handle< T >::cast(), 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 964 of file jsregexp.cc.
|
inline |
Definition at line 956 of file jsregexp.cc.
Referenced by RecursionCheck::~RecursionCheck().
|
inline |
Definition at line 962 of file jsregexp.cc.
Referenced by RegExpEngine::Compile().
|
inline |
Definition at line 960 of file jsregexp.cc.
Referenced by TextNode::Emit(), BackReferenceNode::Emit(), TextNode::FillInBMInfo(), and TextNode::GetQuickCheckDetails().
|
inline |
Definition at line 955 of file jsregexp.cc.
Referenced by RecursionCheck::RecursionCheck().
|
inline |
Definition at line 950 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 954 of file jsregexp.cc.
Referenced by RegExpNode::LimitVersions().
|
inline |
Definition at line 965 of file jsregexp.cc.
Referenced by RegExpExpansionLimiter::RegExpExpansionLimiter(), and RegExpExpansionLimiter::~RegExpExpansionLimiter().
|
inline |
Definition at line 958 of file jsregexp.cc.
Referenced by Trace::AdvanceCurrentPositionInTrace(), and TextNode::Emit().
|
inline |
Definition at line 969 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 948 of file jsregexp.cc.
|
static |
Definition at line 946 of file jsregexp.cc.
|
static |
Definition at line 953 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 971 of file jsregexp.cc.
Referenced by ActionNode::Emit(), and RegExpQuantifier::ToNode().
|
static |
Definition at line 947 of file jsregexp.cc.