webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
JSC::Yarr::PatternTerm Struct Reference

#include <YarrPattern.h>

Public Types

enum  Type {
  TypeAssertionBOL, TypeAssertionEOL, TypeAssertionWordBoundary, TypePatternCharacter,
  TypeCharacterClass, TypeBackReference, TypeForwardReference, TypeParenthesesSubpattern,
  TypeParentheticalAssertion, TypeDotStarEnclosure, TypeAssertionBOL, TypeAssertionEOL,
  TypeAssertionWordBoundary, TypePatternCharacter, TypeCharacterClass, TypeBackReference,
  TypeForwardReference, TypeParenthesesSubpattern, TypeParentheticalAssertion, TypeDotStarEnclosure
}
 
enum  Type {
  TypeAssertionBOL, TypeAssertionEOL, TypeAssertionWordBoundary, TypePatternCharacter,
  TypeCharacterClass, TypeBackReference, TypeForwardReference, TypeParenthesesSubpattern,
  TypeParentheticalAssertion, TypeDotStarEnclosure, TypeAssertionBOL, TypeAssertionEOL,
  TypeAssertionWordBoundary, TypePatternCharacter, TypeCharacterClass, TypeBackReference,
  TypeForwardReference, TypeParenthesesSubpattern, TypeParentheticalAssertion, TypeDotStarEnclosure
}
 

Public Member Functions

 PatternTerm (UChar32 ch)
 
 PatternTerm (CharacterClass *charClass, bool invert)
 
 PatternTerm (Type type, unsigned subpatternId, PatternDisjunction *disjunction, bool capture=false, bool invert=false)
 
 PatternTerm (Type type, bool invert=false)
 
 PatternTerm (unsigned spatternId)
 
 PatternTerm (bool bolAnchor, bool eolAnchor)
 
bool invert ()
 
bool capture ()
 
void quantify (unsigned count, QuantifierType type)
 
void quantify (unsigned minCount, unsigned maxCount, QuantifierType type)
 
 PatternTerm (UChar32 ch)
 
 PatternTerm (CharacterClass *charClass, bool invert)
 
 PatternTerm (Type type, unsigned subpatternId, PatternDisjunction *disjunction, bool capture=false, bool invert=false)
 
 PatternTerm (Type type, bool invert=false)
 
 PatternTerm (unsigned spatternId)
 
 PatternTerm (bool bolAnchor, bool eolAnchor)
 
bool invert ()
 
bool capture ()
 
void quantify (unsigned count, QuantifierType type)
 
void quantify (unsigned minCount, unsigned maxCount, QuantifierType type)
 

Static Public Member Functions

static PatternTerm ForwardReference ()
 
static PatternTerm BOL ()
 
static PatternTerm EOL ()
 
static PatternTerm WordBoundary (bool invert)
 
static PatternTerm ForwardReference ()
 
static PatternTerm BOL ()
 
static PatternTerm EOL ()
 
static PatternTerm WordBoundary (bool invert)
 

Public Attributes

enum JSC::Yarr::PatternTerm::Type type
 
bool m_capture:1
 
bool m_invert:1
 
union {
   UChar32   patternCharacter
 
   CharacterClass *   characterClass
 
   unsigned   backReferenceSubpatternId
 
   struct {
      PatternDisjunction *   disjunction
 
      unsigned   subpatternId
 
      unsigned   lastSubpatternId
 
      bool   isCopy
 
      bool   isTerminal
 
   }   parentheses
 
   struct {
      bool   bolAnchor: 1
 
      bool   eolAnchor: 1
 
   }   anchors
 
}; 
 
QuantifierType quantityType
 
Checked< unsigned > quantityMinCount
 
Checked< unsigned > quantityMaxCount
 
unsigned inputPosition
 
unsigned frameLocation
 
union {
   UChar32   patternCharacter
 
   CharacterClass *   characterClass
 
   unsigned   backReferenceSubpatternId
 
   struct {
      PatternDisjunction *   disjunction
 
      unsigned   subpatternId
 
      unsigned   lastSubpatternId
 
      bool   isCopy
 
      bool   isTerminal
 
   }   parentheses
 
   struct {
      bool   bolAnchor: 1
 
      bool   eolAnchor: 1
 
   }   anchors
 
}; 
 

Member Enumeration Documentation

◆ Type [1/2]

Enumerator
TypeAssertionBOL 
TypeAssertionEOL 
TypeAssertionWordBoundary 
TypePatternCharacter 
TypeCharacterClass 
TypeBackReference 
TypeForwardReference 
TypeParenthesesSubpattern 
TypeParentheticalAssertion 
TypeDotStarEnclosure 
TypeAssertionBOL 
TypeAssertionEOL 
TypeAssertionWordBoundary 
TypePatternCharacter 
TypeCharacterClass 
TypeBackReference 
TypeForwardReference 
TypeParenthesesSubpattern 
TypeParentheticalAssertion 
TypeDotStarEnclosure 

◆ Type [2/2]

Enumerator
TypeAssertionBOL 
TypeAssertionEOL 
TypeAssertionWordBoundary 
TypePatternCharacter 
TypeCharacterClass 
TypeBackReference 
TypeForwardReference 
TypeParenthesesSubpattern 
TypeParentheticalAssertion 
TypeDotStarEnclosure 
TypeAssertionBOL 
TypeAssertionEOL 
TypeAssertionWordBoundary 
TypePatternCharacter 
TypeCharacterClass 
TypeBackReference 
TypeForwardReference 
TypeParenthesesSubpattern 
TypeParentheticalAssertion 
TypeDotStarEnclosure 

Constructor & Destructor Documentation

◆ PatternTerm() [1/12]

JSC::Yarr::PatternTerm::PatternTerm ( UChar32  ch)
inline

◆ PatternTerm() [2/12]

JSC::Yarr::PatternTerm::PatternTerm ( CharacterClass charClass,
bool  invert 
)
inline

◆ PatternTerm() [3/12]

JSC::Yarr::PatternTerm::PatternTerm ( Type  type,
unsigned  subpatternId,
PatternDisjunction disjunction,
bool  capture = false,
bool  invert = false 
)
inline

◆ PatternTerm() [4/12]

JSC::Yarr::PatternTerm::PatternTerm ( Type  type,
bool  invert = false 
)
inline

◆ PatternTerm() [5/12]

JSC::Yarr::PatternTerm::PatternTerm ( unsigned  spatternId)
inline

◆ PatternTerm() [6/12]

JSC::Yarr::PatternTerm::PatternTerm ( bool  bolAnchor,
bool  eolAnchor 
)
inline

◆ PatternTerm() [7/12]

JSC::Yarr::PatternTerm::PatternTerm ( UChar32  ch)
inline

◆ PatternTerm() [8/12]

JSC::Yarr::PatternTerm::PatternTerm ( CharacterClass charClass,
bool  invert 
)
inline

◆ PatternTerm() [9/12]

JSC::Yarr::PatternTerm::PatternTerm ( Type  type,
unsigned  subpatternId,
PatternDisjunction disjunction,
bool  capture = false,
bool  invert = false 
)
inline

◆ PatternTerm() [10/12]

JSC::Yarr::PatternTerm::PatternTerm ( Type  type,
bool  invert = false 
)
inline

◆ PatternTerm() [11/12]

JSC::Yarr::PatternTerm::PatternTerm ( unsigned  spatternId)
inline

◆ PatternTerm() [12/12]

JSC::Yarr::PatternTerm::PatternTerm ( bool  bolAnchor,
bool  eolAnchor 
)
inline

Member Function Documentation

◆ BOL() [1/2]

static PatternTerm JSC::Yarr::PatternTerm::BOL ( )
inlinestatic

◆ BOL() [2/2]

static PatternTerm JSC::Yarr::PatternTerm::BOL ( )
inlinestatic

◆ capture() [1/2]

bool JSC::Yarr::PatternTerm::capture ( )
inline

◆ capture() [2/2]

bool JSC::Yarr::PatternTerm::capture ( )
inline

◆ EOL() [1/2]

static PatternTerm JSC::Yarr::PatternTerm::EOL ( )
inlinestatic

◆ EOL() [2/2]

static PatternTerm JSC::Yarr::PatternTerm::EOL ( )
inlinestatic

◆ ForwardReference() [1/2]

static PatternTerm JSC::Yarr::PatternTerm::ForwardReference ( )
inlinestatic

◆ ForwardReference() [2/2]

static PatternTerm JSC::Yarr::PatternTerm::ForwardReference ( )
inlinestatic

◆ invert() [1/2]

bool JSC::Yarr::PatternTerm::invert ( )
inline

◆ invert() [2/2]

bool JSC::Yarr::PatternTerm::invert ( )
inline

◆ quantify() [1/4]

void JSC::Yarr::PatternTerm::quantify ( unsigned  count,
QuantifierType  type 
)
inline

◆ quantify() [2/4]

void JSC::Yarr::PatternTerm::quantify ( unsigned  count,
QuantifierType  type 
)
inline

◆ quantify() [3/4]

void JSC::Yarr::PatternTerm::quantify ( unsigned  minCount,
unsigned  maxCount,
QuantifierType  type 
)
inline

◆ quantify() [4/4]

void JSC::Yarr::PatternTerm::quantify ( unsigned  minCount,
unsigned  maxCount,
QuantifierType  type 
)
inline

◆ WordBoundary() [1/2]

static PatternTerm JSC::Yarr::PatternTerm::WordBoundary ( bool  invert)
inlinestatic

◆ WordBoundary() [2/2]

static PatternTerm JSC::Yarr::PatternTerm::WordBoundary ( bool  invert)
inlinestatic

Member Data Documentation

◆ @271

union { ... }

◆ @627

union { ... }

◆ anchors [1/2]

struct { ... } JSC::Yarr::PatternTerm::anchors

◆ anchors [2/2]

struct { ... } JSC::Yarr::PatternTerm::anchors

◆ backReferenceSubpatternId

unsigned JSC::Yarr::PatternTerm::backReferenceSubpatternId

◆ bolAnchor

bool JSC::Yarr::PatternTerm::bolAnchor

◆ characterClass

CharacterClass* JSC::Yarr::PatternTerm::characterClass

◆ disjunction

PatternDisjunction* JSC::Yarr::PatternTerm::disjunction

◆ eolAnchor

bool JSC::Yarr::PatternTerm::eolAnchor

◆ frameLocation

unsigned JSC::Yarr::PatternTerm::frameLocation

◆ inputPosition

unsigned JSC::Yarr::PatternTerm::inputPosition

◆ isCopy

bool JSC::Yarr::PatternTerm::isCopy

◆ isTerminal

bool JSC::Yarr::PatternTerm::isTerminal

◆ lastSubpatternId

unsigned JSC::Yarr::PatternTerm::lastSubpatternId

◆ m_capture

bool JSC::Yarr::PatternTerm::m_capture

◆ m_invert

bool JSC::Yarr::PatternTerm::m_invert

◆ parentheses [1/2]

struct { ... } JSC::Yarr::PatternTerm::parentheses

◆ parentheses [2/2]

struct { ... } JSC::Yarr::PatternTerm::parentheses

◆ patternCharacter

UChar32 JSC::Yarr::PatternTerm::patternCharacter

◆ quantityMaxCount

Checked< unsigned > JSC::Yarr::PatternTerm::quantityMaxCount

◆ quantityMinCount

Checked< unsigned > JSC::Yarr::PatternTerm::quantityMinCount

◆ quantityType

QuantifierType JSC::Yarr::PatternTerm::quantityType

◆ subpatternId

unsigned JSC::Yarr::PatternTerm::subpatternId

◆ type

enum JSC::Yarr::PatternTerm::Type JSC::Yarr::PatternTerm::type

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