v8  3.25.30(node0.11.13)
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 1019 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 1044 of file jsregexp.cc.

Referenced by RegExpEngine::Compile().

void AddWork ( RegExpNode node)
inline

Definition at line 1037 of file jsregexp.cc.

Referenced by RegExpNode::LimitVersions().

int AllocateRegister ( )
inline

Definition at line 1024 of file jsregexp.cc.

References RegExpMacroAssembler::kMaxRegister.

int current_expansion_factor ( )
inline

Definition at line 1057 of file jsregexp.cc.

void DecrementRecursionDepth ( )
inline

Definition at line 1049 of file jsregexp.cc.

FrequencyCollator* frequency_collator ( )
inline

Definition at line 1055 of file jsregexp.cc.

Referenced by RegExpEngine::Compile().

bool ignore_case ( )
inline
void IncrementRecursionDepth ( )
inline

Definition at line 1048 of file jsregexp.cc.

Referenced by RecursionCheck::RecursionCheck().

int recursion_depth ( )
inline

Definition at line 1047 of file jsregexp.cc.

Referenced by RegExpNode::LimitVersions().

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

Definition at line 1051 of file jsregexp.cc.

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

Zone* zone ( ) const
inline

Definition at line 1062 of file jsregexp.cc.

Referenced by Trace::Flush(), and RegExpCompiler::RegExpCompiler().

Field Documentation

const int kCodeOffset = 1
static

Definition at line 1041 of file jsregexp.cc.

const int kImplementationOffset = 0
static

Definition at line 1039 of file jsregexp.cc.

const int kMaxRecursion = 100
static
const int kNoRegister = -1
static

Definition at line 1064 of file jsregexp.cc.

Referenced by ActionNode::Emit().

const int kNumberOfRegistersOffset = 0
static

Definition at line 1040 of file jsregexp.cc.


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