v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::RegExpDisjunction Class Referencefinal

#include <regexp-ast.h>

Inheritance diagram for v8::internal::RegExpDisjunction:
Collaboration diagram for v8::internal::RegExpDisjunction:

Public Member Functions

 RegExpDisjunction (ZoneList< RegExpTree * > *alternatives)
 
 DECL_BOILERPLATE (Disjunction)
 
Interval CaptureRegisters () override
 
bool IsAnchoredAtStart () override
 
bool IsAnchoredAtEnd () override
 
int min_match () override
 
int max_match () override
 
ZoneList< RegExpTree * > * alternatives () const
 
- Public Member Functions inherited from v8::internal::RegExpTree
virtual ~RegExpTree ()=default
 
virtual void * Accept (RegExpVisitor *visitor, void *data)=0
 
virtual RegExpNodeToNode (RegExpCompiler *compiler, RegExpNode *on_success)=0
 
virtual bool IsTextElement ()
 
virtual void AppendToText (RegExpText *text, Zone *zone)
 
V8_EXPORT_PRIVATE std::ostream & Print (std::ostream &os, Zone *zone)
 
- Public Member Functions inherited from v8::internal::ZoneObject
void * operator new (size_t, Zone *)=delete
 
void * operator new (size_t size, void *ptr)
 
void operator delete (void *, size_t)
 
void operator delete (void *pointer, Zone *zone)=delete
 

Private Member Functions

bool SortConsecutiveAtoms (RegExpCompiler *compiler)
 
void RationalizeConsecutiveAtoms (RegExpCompiler *compiler)
 
void FixSingleCharacterDisjunctions (RegExpCompiler *compiler)
 

Private Attributes

ZoneList< RegExpTree * > * alternatives_
 
int min_match_
 
int max_match_
 

Additional Inherited Members

- Static Public Attributes inherited from v8::internal::RegExpTree
static const int kInfinity = kMaxInt
 

Detailed Description

Definition at line 218 of file regexp-ast.h.

Constructor & Destructor Documentation

◆ RegExpDisjunction()

v8::internal::RegExpDisjunction::RegExpDisjunction ( ZoneList< RegExpTree * > * alternatives)
explicit

Definition at line 350 of file regexp-ast.cc.

Here is the call graph for this function:

Member Function Documentation

◆ alternatives()

ZoneList< RegExpTree * > * v8::internal::RegExpDisjunction::alternatives ( ) const
inline

Definition at line 229 of file regexp-ast.h.

Here is the caller graph for this function:

◆ CaptureRegisters()

Interval v8::internal::RegExpDisjunction::CaptureRegisters ( )
overridevirtual

Reimplemented from v8::internal::RegExpTree.

Definition at line 48 of file regexp-ast.cc.

Here is the call graph for this function:

◆ DECL_BOILERPLATE()

v8::internal::RegExpDisjunction::DECL_BOILERPLATE ( Disjunction )

◆ FixSingleCharacterDisjunctions()

void v8::internal::RegExpDisjunction::FixSingleCharacterDisjunctions ( RegExpCompiler * compiler)
private

Definition at line 984 of file regexp-compiler-tonode.cc.

Here is the call graph for this function:

◆ IsAnchoredAtEnd()

bool v8::internal::RegExpDisjunction::IsAnchoredAtEnd ( )
overridevirtual

Reimplemented from v8::internal::RegExpTree.

Definition at line 118 of file regexp-ast.cc.

Here is the call graph for this function:

◆ IsAnchoredAtStart()

bool v8::internal::RegExpDisjunction::IsAnchoredAtStart ( )
overridevirtual

Reimplemented from v8::internal::RegExpTree.

Definition at line 109 of file regexp-ast.cc.

Here is the call graph for this function:

◆ max_match()

int v8::internal::RegExpDisjunction::max_match ( )
inlineoverridevirtual

Implements v8::internal::RegExpTree.

Definition at line 228 of file regexp-ast.h.

◆ min_match()

int v8::internal::RegExpDisjunction::min_match ( )
inlineoverridevirtual

Implements v8::internal::RegExpTree.

Definition at line 227 of file regexp-ast.h.

◆ RationalizeConsecutiveAtoms()

void v8::internal::RegExpDisjunction::RationalizeConsecutiveAtoms ( RegExpCompiler * compiler)
private

Definition at line 871 of file regexp-compiler-tonode.cc.

Here is the call graph for this function:

◆ SortConsecutiveAtoms()

bool v8::internal::RegExpDisjunction::SortConsecutiveAtoms ( RegExpCompiler * compiler)
private

Definition at line 816 of file regexp-compiler-tonode.cc.

Here is the call graph for this function:

Member Data Documentation

◆ alternatives_

ZoneList<RegExpTree*>* v8::internal::RegExpDisjunction::alternatives_
private

Definition at line 235 of file regexp-ast.h.

◆ max_match_

int v8::internal::RegExpDisjunction::max_match_
private

Definition at line 237 of file regexp-ast.h.

◆ min_match_

int v8::internal::RegExpDisjunction::min_match_
private

Definition at line 236 of file regexp-ast.h.


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