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

#include <regexp-ast.h>

Inheritance diagram for v8::internal::RegExpClassRanges:
Collaboration diagram for v8::internal::RegExpClassRanges:

Public Types

enum  Flag { NEGATED = 1 << 0 , CONTAINS_SPLIT_SURROGATE = 1 << 1 , IS_CASE_FOLDED = 1 << 2 }
 
using ClassRangesFlags = base::Flags<Flag>
 

Public Member Functions

 RegExpClassRanges (Zone *zone, ZoneList< CharacterRange > *ranges, ClassRangesFlags class_ranges_flags=ClassRangesFlags())
 
 RegExpClassRanges (StandardCharacterSet standard_set_type)
 
 DECL_BOILERPLATE (ClassRanges)
 
bool IsTextElement () override
 
int min_match () override
 
int max_match () override
 
void AppendToText (RegExpText *text, Zone *zone) override
 
bool is_standard (Zone *zone)
 
StandardCharacterSet standard_type () const
 
CharacterSet character_set () const
 
ZoneList< CharacterRange > * ranges (Zone *zone)
 
bool is_negated () const
 
bool contains_split_surrogate () const
 
bool is_case_folded () 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 IsAnchoredAtStart ()
 
virtual bool IsAnchoredAtEnd ()
 
virtual Interval CaptureRegisters ()
 
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 Attributes

CharacterSet set_
 
ClassRangesFlags class_ranges_flags_
 

Additional Inherited Members

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

Detailed Description

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

Member Typedef Documentation

◆ ClassRangesFlags

Member Enumeration Documentation

◆ Flag

Enumerator
NEGATED 
CONTAINS_SPLIT_SURROGATE 
IS_CASE_FOLDED 

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

Constructor & Destructor Documentation

◆ RegExpClassRanges() [1/2]

v8::internal::RegExpClassRanges::RegExpClassRanges ( Zone * zone,
ZoneList< CharacterRange > * ranges,
ClassRangesFlags class_ranges_flags = ClassRangesFlags() )
inline

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

◆ RegExpClassRanges() [2/2]

v8::internal::RegExpClassRanges::RegExpClassRanges ( StandardCharacterSet standard_set_type)
inlineexplicit

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

Member Function Documentation

◆ AppendToText()

void v8::internal::RegExpClassRanges::AppendToText ( RegExpText * text,
Zone * zone )
overridevirtual

Reimplemented from v8::internal::RegExpTree.

Definition at line 200 of file regexp-compiler.cc.

Here is the call graph for this function:

◆ character_set()

CharacterSet v8::internal::RegExpClassRanges::character_set ( ) const
inline

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

◆ contains_split_surrogate()

bool v8::internal::RegExpClassRanges::contains_split_surrogate ( ) const
inline

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

◆ DECL_BOILERPLATE()

v8::internal::RegExpClassRanges::DECL_BOILERPLATE ( ClassRanges )

◆ is_case_folded()

bool v8::internal::RegExpClassRanges::is_case_folded ( ) const
inline

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

◆ is_negated()

bool v8::internal::RegExpClassRanges::is_negated ( ) const
inline

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

Here is the caller graph for this function:

◆ is_standard()

bool v8::internal::RegExpClassRanges::is_standard ( Zone * zone)

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

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsTextElement()

bool v8::internal::RegExpClassRanges::IsTextElement ( )
inlineoverridevirtual

Reimplemented from v8::internal::RegExpTree.

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

◆ max_match()

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

Implements v8::internal::RegExpTree.

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

◆ min_match()

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

Implements v8::internal::RegExpTree.

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

◆ ranges()

ZoneList< CharacterRange > * v8::internal::RegExpClassRanges::ranges ( Zone * zone)
inline

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

Here is the call graph for this function:
Here is the caller graph for this function:

◆ standard_type()

StandardCharacterSet v8::internal::RegExpClassRanges::standard_type ( ) const
inline

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

Here is the call graph for this function:

Member Data Documentation

◆ class_ranges_flags_

ClassRangesFlags v8::internal::RegExpClassRanges::class_ranges_flags_
private

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

◆ set_

CharacterSet v8::internal::RegExpClassRanges::set_
private

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


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