v8  3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
RegExpCompiler Class Reference

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)
 
RegExpMacroAssemblermacro_assembler ()
 
EndNodeaccept ()
 
int recursion_depth ()
 
void IncrementRecursionDepth ()
 
void DecrementRecursionDepth ()
 
void SetRegExpTooBig ()
 
bool ignore_case ()
 
bool ascii ()
 
FrequencyCollatorfrequency_collator ()
 
int current_expansion_factor ()
 
void set_current_expansion_factor (int value)
 
Zonezone () 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
 

Detailed Description

Definition at line 1078 of file jsregexp.cc.

Constructor & Destructor Documentation

RegExpCompiler ( int  capture_count,
bool  ignore_case,
bool  is_ascii,
Zone zone 
)

Member Function Documentation

EndNode* accept ( )
inline

Definition at line 1103 of file jsregexp.cc.

Referenced by RegExpEngine::Compile().

void AddWork ( RegExpNode node)
inline

Definition at line 1096 of file jsregexp.cc.

Referenced by RegExpNode::LimitVersions().

int AllocateRegister ( )
inline
int current_expansion_factor ( )
inline

Definition at line 1116 of file jsregexp.cc.

void DecrementRecursionDepth ( )
inline

Definition at line 1108 of file jsregexp.cc.

FrequencyCollator* frequency_collator ( )
inline

Definition at line 1114 of file jsregexp.cc.

Referenced by RegExpEngine::Compile().

bool ignore_case ( )
inline
void IncrementRecursionDepth ( )
inline

Definition at line 1107 of file jsregexp.cc.

Referenced by RecursionCheck::RecursionCheck().

int recursion_depth ( )
inline

Definition at line 1106 of file jsregexp.cc.

Referenced by RegExpNode::LimitVersions().

void set_current_expansion_factor ( int  value)
inline
void SetRegExpTooBig ( )
inline

Definition at line 1110 of file jsregexp.cc.

Referenced by Trace::AdvanceCurrentPositionInTrace(), and TextNode::Emit().

Field Documentation

const int kCodeOffset = 1
static

Definition at line 1100 of file jsregexp.cc.

const int kImplementationOffset = 0
static

Definition at line 1098 of file jsregexp.cc.

const int kNoRegister = -1
static

Definition at line 1123 of file jsregexp.cc.

Referenced by ActionNode::Emit(), and RegExpQuantifier::ToNode().

const int kNumberOfRegistersOffset = 0
static

Definition at line 1099 of file jsregexp.cc.


The documentation for this class was generated from the following file: