Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::RegExpBackReference Class Reference

#include <regexp_ast.h>

Inheritance diagram for dart::RegExpBackReference:
dart::RegExpTree dart::ZoneAllocated

Public Member Functions

 RegExpBackReference (RegExpFlags flags)
 
 RegExpBackReference (RegExpCapture *capture, RegExpFlags flags)
 
virtual void * Accept (RegExpVisitor *visitor, void *data)
 
virtual RegExpNodeToNode (RegExpCompiler *compiler, RegExpNode *on_success)
 
virtual RegExpBackReferenceAsBackReference ()
 
virtual bool IsBackReference () const
 
virtual intptr_t min_match () const
 
virtual intptr_t max_match () const
 
intptr_t index () const
 
RegExpCapturecapture () const
 
void set_capture (RegExpCapture *capture)
 
const ZoneGrowableArray< uint16_t > * name ()
 
void set_name (const ZoneGrowableArray< uint16_t > *name)
 
- Public Member Functions inherited from dart::RegExpTree
virtual ~RegExpTree ()
 
virtual void * Accept (RegExpVisitor *visitor, void *data)=0
 
virtual RegExpNodeToNode (RegExpCompiler *compiler, RegExpNode *on_success)=0
 
virtual bool IsTextElement () const
 
virtual bool IsAnchoredAtStart () const
 
virtual bool IsAnchoredAtEnd () const
 
virtual intptr_t min_match () const =0
 
virtual intptr_t max_match () const =0
 
virtual Interval CaptureRegisters () const
 
virtual void AppendToText (RegExpText *text)
 
void Print ()
 
- Public Member Functions inherited from dart::ZoneAllocated
 ZoneAllocated ()
 
void * operator new (size_t size)
 
void * operator new (size_t size, Zone *zone)
 
void operator delete (void *pointer)
 

Additional Inherited Members

- Static Public Attributes inherited from dart::RegExpTree
static constexpr intptr_t kInfinity = kMaxInt32
 

Detailed Description

Definition at line 404 of file regexp_ast.h.

Constructor & Destructor Documentation

◆ RegExpBackReference() [1/2]

dart::RegExpBackReference::RegExpBackReference ( RegExpFlags  flags)
inlineexplicit

Definition at line 406 of file regexp_ast.h.

407 : capture_(nullptr), name_(nullptr), flags_(flags) {}
FlutterSemanticsFlag flags

◆ RegExpBackReference() [2/2]

dart::RegExpBackReference::RegExpBackReference ( RegExpCapture capture,
RegExpFlags  flags 
)
inline

Definition at line 408 of file regexp_ast.h.

409 : capture_(capture), name_(nullptr), flags_(flags) {}
RegExpCapture * capture() const
Definition: regexp_ast.h:420

Member Function Documentation

◆ Accept()

virtual void * dart::RegExpBackReference::Accept ( RegExpVisitor visitor,
void *  data 
)
virtual

Implements dart::RegExpTree.

◆ AsBackReference()

virtual RegExpBackReference * dart::RegExpBackReference::AsBackReference ( )
virtual

◆ capture()

RegExpCapture * dart::RegExpBackReference::capture ( ) const
inline

Definition at line 420 of file regexp_ast.h.

420{ return capture_; }

◆ index()

intptr_t dart::RegExpBackReference::index ( ) const
inline

Definition at line 419 of file regexp_ast.h.

419{ return capture_->index(); }
intptr_t index() const
Definition: regexp_ast.h:334

◆ IsBackReference()

virtual bool dart::RegExpBackReference::IsBackReference ( ) const
virtual

◆ max_match()

virtual intptr_t dart::RegExpBackReference::max_match ( ) const
inlinevirtual

Implements dart::RegExpTree.

Definition at line 418 of file regexp_ast.h.

418{ return kInfinity; }
static constexpr intptr_t kInfinity
Definition: regexp_ast.h:39

◆ min_match()

virtual intptr_t dart::RegExpBackReference::min_match ( ) const
inlinevirtual

Implements dart::RegExpTree.

Definition at line 414 of file regexp_ast.h.

414{ return 0; }

◆ name()

const ZoneGrowableArray< uint16_t > * dart::RegExpBackReference::name ( )
inline

Definition at line 422 of file regexp_ast.h.

422{ return name_; }

◆ set_capture()

void dart::RegExpBackReference::set_capture ( RegExpCapture capture)
inline

Definition at line 421 of file regexp_ast.h.

421{ capture_ = capture; }

◆ set_name()

void dart::RegExpBackReference::set_name ( const ZoneGrowableArray< uint16_t > *  name)
inline

Definition at line 423 of file regexp_ast.h.

423{ name_ = name; }
const ZoneGrowableArray< uint16_t > * name()
Definition: regexp_ast.h:422

◆ ToNode()

RegExpNode * dart::RegExpBackReference::ToNode ( RegExpCompiler compiler,
RegExpNode on_success 
)
virtual

Implements dart::RegExpTree.

Definition at line 4489 of file regexp.cc.

4490 {
4491 return new (OZ) BackReferenceNode(RegExpCapture::StartRegister(index()),
4493 compiler->read_backward(), on_success);
4494}
intptr_t index() const
Definition: regexp_ast.h:419
static intptr_t EndRegister(intptr_t index)
Definition: regexp_ast.h:338
static intptr_t StartRegister(intptr_t index)
Definition: regexp_ast.h:337
#define OZ
Definition: regexp.cc:3793

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