webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
WebCore::CSSSelector Class Reference

#include <CSSSelector.h>

Public Types

enum  Match {
  Unknown = 0, Tag, Id, Class,
  Exact, Set, List, Hyphen,
  PseudoClass, PseudoElement, Contain, Begin,
  End, PagePseudoClass, Unknown = 0, Tag,
  Id, Class, Exact, Set,
  List, Hyphen, PseudoClass, PseudoElement,
  Contain, Begin, End, PagePseudoClass
}
 
enum  RelationType {
  Subselector, DescendantSpace, Child, DirectAdjacent,
  IndirectAdjacent, ShadowDescendant, Subselector, DescendantSpace,
  Child, DirectAdjacent, IndirectAdjacent, ShadowDescendant
}
 
enum  PseudoClassType {
  PseudoClassUnknown = 0, PseudoClassEmpty, PseudoClassFirstChild, PseudoClassFirstOfType,
  PseudoClassLastChild, PseudoClassLastOfType, PseudoClassOnlyChild, PseudoClassOnlyOfType,
  PseudoClassNthChild, PseudoClassNthOfType, PseudoClassNthLastChild, PseudoClassNthLastOfType,
  PseudoClassLink, PseudoClassVisited, PseudoClassAny, PseudoClassAnyLink,
  PseudoClassAnyLinkDeprecated, PseudoClassAutofill, PseudoClassHover, PseudoClassDrag,
  PseudoClassFocus, PseudoClassFocusWithin, PseudoClassActive, PseudoClassChecked,
  PseudoClassEnabled, PseudoClassFullPageMedia, PseudoClassDefault, PseudoClassDisabled,
  PseudoClassMatches, PseudoClassOptional, PseudoClassPlaceholderShown, PseudoClassRequired,
  PseudoClassReadOnly, PseudoClassReadWrite, PseudoClassValid, PseudoClassInvalid,
  PseudoClassIndeterminate, PseudoClassTarget, PseudoClassLang, PseudoClassNot,
  PseudoClassRoot, PseudoClassScope, PseudoClassWindowInactive, PseudoClassCornerPresent,
  PseudoClassDecrement, PseudoClassIncrement, PseudoClassHorizontal, PseudoClassVertical,
  PseudoClassStart, PseudoClassEnd, PseudoClassDoubleButton, PseudoClassSingleButton,
  PseudoClassNoButton, PseudoClassInRange, PseudoClassOutOfRange, PseudoClassHost,
  PseudoClassDefined, PseudoClassUnknown = 0, PseudoClassEmpty, PseudoClassFirstChild,
  PseudoClassFirstOfType, PseudoClassLastChild, PseudoClassLastOfType, PseudoClassOnlyChild,
  PseudoClassOnlyOfType, PseudoClassNthChild, PseudoClassNthOfType, PseudoClassNthLastChild,
  PseudoClassNthLastOfType, PseudoClassLink, PseudoClassVisited, PseudoClassAny,
  PseudoClassAnyLink, PseudoClassAnyLinkDeprecated, PseudoClassAutofill, PseudoClassHover,
  PseudoClassDrag, PseudoClassFocus, PseudoClassFocusWithin, PseudoClassActive,
  PseudoClassChecked, PseudoClassEnabled, PseudoClassFullPageMedia, PseudoClassDefault,
  PseudoClassDisabled, PseudoClassMatches, PseudoClassOptional, PseudoClassPlaceholderShown,
  PseudoClassRequired, PseudoClassReadOnly, PseudoClassReadWrite, PseudoClassValid,
  PseudoClassInvalid, PseudoClassIndeterminate, PseudoClassTarget, PseudoClassLang,
  PseudoClassNot, PseudoClassRoot, PseudoClassScope, PseudoClassWindowInactive,
  PseudoClassCornerPresent, PseudoClassDecrement, PseudoClassIncrement, PseudoClassHorizontal,
  PseudoClassVertical, PseudoClassStart, PseudoClassEnd, PseudoClassDoubleButton,
  PseudoClassSingleButton, PseudoClassNoButton, PseudoClassInRange, PseudoClassOutOfRange,
  PseudoClassHost, PseudoClassDefined
}
 
enum  PseudoElementType {
  PseudoElementUnknown = 0, PseudoElementAfter, PseudoElementBefore, PseudoElementFirstLetter,
  PseudoElementFirstLine, PseudoElementResizer, PseudoElementScrollbar, PseudoElementScrollbarButton,
  PseudoElementScrollbarCorner, PseudoElementScrollbarThumb, PseudoElementScrollbarTrack, PseudoElementScrollbarTrackPiece,
  PseudoElementSelection, PseudoElementSlotted, PseudoElementUserAgentCustom, PseudoElementWebKitCustom,
  PseudoElementWebKitCustomLegacyPrefixed, PseudoElementUnknown = 0, PseudoElementAfter, PseudoElementBefore,
  PseudoElementFirstLetter, PseudoElementFirstLine, PseudoElementResizer, PseudoElementScrollbar,
  PseudoElementScrollbarButton, PseudoElementScrollbarCorner, PseudoElementScrollbarThumb, PseudoElementScrollbarTrack,
  PseudoElementScrollbarTrackPiece, PseudoElementSelection, PseudoElementSlotted, PseudoElementUserAgentCustom,
  PseudoElementWebKitCustom, PseudoElementWebKitCustomLegacyPrefixed
}
 
enum  PagePseudoClassType {
  PagePseudoClassFirst = 1, PagePseudoClassLeft, PagePseudoClassRight, PagePseudoClassFirst = 1,
  PagePseudoClassLeft, PagePseudoClassRight
}
 
enum  MarginBoxType {
  TopLeftCornerMarginBox, TopLeftMarginBox, TopCenterMarginBox, TopRightMarginBox,
  TopRightCornerMarginBox, BottomLeftCornerMarginBox, BottomLeftMarginBox, BottomCenterMarginBox,
  BottomRightMarginBox, BottomRightCornerMarginBox, LeftTopMarginBox, LeftMiddleMarginBox,
  LeftBottomMarginBox, RightTopMarginBox, RightMiddleMarginBox, RightBottomMarginBox,
  TopLeftCornerMarginBox, TopLeftMarginBox, TopCenterMarginBox, TopRightMarginBox,
  TopRightCornerMarginBox, BottomLeftCornerMarginBox, BottomLeftMarginBox, BottomCenterMarginBox,
  BottomRightMarginBox, BottomRightCornerMarginBox, LeftTopMarginBox, LeftMiddleMarginBox,
  LeftBottomMarginBox, RightTopMarginBox, RightMiddleMarginBox, RightBottomMarginBox
}
 
enum  AttributeMatchType { CaseSensitive, CaseInsensitive, CaseSensitive, CaseInsensitive }
 
enum  Match {
  Unknown = 0, Tag, Id, Class,
  Exact, Set, List, Hyphen,
  PseudoClass, PseudoElement, Contain, Begin,
  End, PagePseudoClass, Unknown = 0, Tag,
  Id, Class, Exact, Set,
  List, Hyphen, PseudoClass, PseudoElement,
  Contain, Begin, End, PagePseudoClass
}
 
enum  RelationType {
  Subselector, DescendantSpace, Child, DirectAdjacent,
  IndirectAdjacent, ShadowDescendant, Subselector, DescendantSpace,
  Child, DirectAdjacent, IndirectAdjacent, ShadowDescendant
}
 
enum  PseudoClassType {
  PseudoClassUnknown = 0, PseudoClassEmpty, PseudoClassFirstChild, PseudoClassFirstOfType,
  PseudoClassLastChild, PseudoClassLastOfType, PseudoClassOnlyChild, PseudoClassOnlyOfType,
  PseudoClassNthChild, PseudoClassNthOfType, PseudoClassNthLastChild, PseudoClassNthLastOfType,
  PseudoClassLink, PseudoClassVisited, PseudoClassAny, PseudoClassAnyLink,
  PseudoClassAnyLinkDeprecated, PseudoClassAutofill, PseudoClassHover, PseudoClassDrag,
  PseudoClassFocus, PseudoClassFocusWithin, PseudoClassActive, PseudoClassChecked,
  PseudoClassEnabled, PseudoClassFullPageMedia, PseudoClassDefault, PseudoClassDisabled,
  PseudoClassMatches, PseudoClassOptional, PseudoClassPlaceholderShown, PseudoClassRequired,
  PseudoClassReadOnly, PseudoClassReadWrite, PseudoClassValid, PseudoClassInvalid,
  PseudoClassIndeterminate, PseudoClassTarget, PseudoClassLang, PseudoClassNot,
  PseudoClassRoot, PseudoClassScope, PseudoClassWindowInactive, PseudoClassCornerPresent,
  PseudoClassDecrement, PseudoClassIncrement, PseudoClassHorizontal, PseudoClassVertical,
  PseudoClassStart, PseudoClassEnd, PseudoClassDoubleButton, PseudoClassSingleButton,
  PseudoClassNoButton, PseudoClassInRange, PseudoClassOutOfRange, PseudoClassHost,
  PseudoClassDefined, PseudoClassUnknown = 0, PseudoClassEmpty, PseudoClassFirstChild,
  PseudoClassFirstOfType, PseudoClassLastChild, PseudoClassLastOfType, PseudoClassOnlyChild,
  PseudoClassOnlyOfType, PseudoClassNthChild, PseudoClassNthOfType, PseudoClassNthLastChild,
  PseudoClassNthLastOfType, PseudoClassLink, PseudoClassVisited, PseudoClassAny,
  PseudoClassAnyLink, PseudoClassAnyLinkDeprecated, PseudoClassAutofill, PseudoClassHover,
  PseudoClassDrag, PseudoClassFocus, PseudoClassFocusWithin, PseudoClassActive,
  PseudoClassChecked, PseudoClassEnabled, PseudoClassFullPageMedia, PseudoClassDefault,
  PseudoClassDisabled, PseudoClassMatches, PseudoClassOptional, PseudoClassPlaceholderShown,
  PseudoClassRequired, PseudoClassReadOnly, PseudoClassReadWrite, PseudoClassValid,
  PseudoClassInvalid, PseudoClassIndeterminate, PseudoClassTarget, PseudoClassLang,
  PseudoClassNot, PseudoClassRoot, PseudoClassScope, PseudoClassWindowInactive,
  PseudoClassCornerPresent, PseudoClassDecrement, PseudoClassIncrement, PseudoClassHorizontal,
  PseudoClassVertical, PseudoClassStart, PseudoClassEnd, PseudoClassDoubleButton,
  PseudoClassSingleButton, PseudoClassNoButton, PseudoClassInRange, PseudoClassOutOfRange,
  PseudoClassHost, PseudoClassDefined
}
 
enum  PseudoElementType {
  PseudoElementUnknown = 0, PseudoElementAfter, PseudoElementBefore, PseudoElementFirstLetter,
  PseudoElementFirstLine, PseudoElementResizer, PseudoElementScrollbar, PseudoElementScrollbarButton,
  PseudoElementScrollbarCorner, PseudoElementScrollbarThumb, PseudoElementScrollbarTrack, PseudoElementScrollbarTrackPiece,
  PseudoElementSelection, PseudoElementSlotted, PseudoElementUserAgentCustom, PseudoElementWebKitCustom,
  PseudoElementWebKitCustomLegacyPrefixed, PseudoElementUnknown = 0, PseudoElementAfter, PseudoElementBefore,
  PseudoElementFirstLetter, PseudoElementFirstLine, PseudoElementResizer, PseudoElementScrollbar,
  PseudoElementScrollbarButton, PseudoElementScrollbarCorner, PseudoElementScrollbarThumb, PseudoElementScrollbarTrack,
  PseudoElementScrollbarTrackPiece, PseudoElementSelection, PseudoElementSlotted, PseudoElementUserAgentCustom,
  PseudoElementWebKitCustom, PseudoElementWebKitCustomLegacyPrefixed
}
 
enum  PagePseudoClassType {
  PagePseudoClassFirst = 1, PagePseudoClassLeft, PagePseudoClassRight, PagePseudoClassFirst = 1,
  PagePseudoClassLeft, PagePseudoClassRight
}
 
enum  MarginBoxType {
  TopLeftCornerMarginBox, TopLeftMarginBox, TopCenterMarginBox, TopRightMarginBox,
  TopRightCornerMarginBox, BottomLeftCornerMarginBox, BottomLeftMarginBox, BottomCenterMarginBox,
  BottomRightMarginBox, BottomRightCornerMarginBox, LeftTopMarginBox, LeftMiddleMarginBox,
  LeftBottomMarginBox, RightTopMarginBox, RightMiddleMarginBox, RightBottomMarginBox,
  TopLeftCornerMarginBox, TopLeftMarginBox, TopCenterMarginBox, TopRightMarginBox,
  TopRightCornerMarginBox, BottomLeftCornerMarginBox, BottomLeftMarginBox, BottomCenterMarginBox,
  BottomRightMarginBox, BottomRightCornerMarginBox, LeftTopMarginBox, LeftMiddleMarginBox,
  LeftBottomMarginBox, RightTopMarginBox, RightMiddleMarginBox, RightBottomMarginBox
}
 
enum  AttributeMatchType { CaseSensitive, CaseInsensitive, CaseSensitive, CaseInsensitive }
 

Public Member Functions

 CSSSelector ()
 
 CSSSelector (const CSSSelector &)
 
 CSSSelector (const QualifiedName &, bool tagIsForNamespaceRule=false)
 
 ~CSSSelector ()
 
String selectorText (const String &=emptyString()) const
 
bool operator== (const CSSSelector &) const
 
unsigned staticSpecificity (bool &ok) const
 
unsigned specificityForPage () const
 
unsigned simpleSelectorSpecificity () const
 
const CSSSelectortagHistory () const
 
const QualifiedNametagQName () const
 
const AtomicStringtagLowercaseLocalName () const
 
const AtomicStringvalue () const
 
const AtomicStringserializingValue () const
 
const QualifiedNameattribute () const
 
const AtomicStringattributeCanonicalLocalName () const
 
const AtomicStringargument () const
 
bool attributeValueMatchingIsCaseInsensitive () const
 
const Vector< AtomicString > * langArgumentList () const
 
const CSSSelectorListselectorList () const
 
void setValue (const AtomicString &, bool matchLowerCase=false)
 
void setAttribute (const QualifiedName &, bool)
 
void setAttributeValueMatchingIsCaseInsensitive (bool)
 
void setAttribute (const QualifiedName &, bool convertToLowercase, AttributeMatchType)
 
void setNth (int a, int b)
 
void setArgument (const AtomicString &)
 
void setLangArgumentList (std::unique_ptr< Vector< AtomicString >>)
 
void setSelectorList (std::unique_ptr< CSSSelectorList >)
 
bool parseNth () const
 
bool matchNth (int count) const
 
int nthA () const
 
int nthB () const
 
bool hasDescendantRelation () const
 
bool hasDescendantOrChildRelation () const
 
PseudoClassType pseudoClassType () const
 
void setPseudoClassType (PseudoClassType pseudoType)
 
PseudoElementType pseudoElementType () const
 
void setPseudoElementType (PseudoElementType pseudoElementType)
 
PagePseudoClassType pagePseudoClassType () const
 
void setPagePseudoType (PagePseudoClassType pagePseudoType)
 
bool matchesPseudoElement () const
 
bool isUnknownPseudoElement () const
 
bool isCustomPseudoElement () const
 
bool isWebKitCustomPseudoElement () const
 
bool isSiblingSelector () const
 
bool isAttributeSelector () const
 
RelationType relation () const
 
void setRelation (RelationType relation)
 
Match match () const
 
void setMatch (Match match)
 
bool isLastInSelectorList () const
 
void setLastInSelectorList ()
 
bool isLastInTagHistory () const
 
void setNotLastInTagHistory ()
 
bool isForPage () const
 
void setForPage ()
 
 CSSSelector ()
 
 CSSSelector (const CSSSelector &)
 
 CSSSelector (const QualifiedName &, bool tagIsForNamespaceRule=false)
 
 ~CSSSelector ()
 
String selectorText (const String &=emptyString()) const
 
bool operator== (const CSSSelector &) const
 
unsigned staticSpecificity (bool &ok) const
 
unsigned specificityForPage () const
 
unsigned simpleSelectorSpecificity () const
 
const CSSSelectortagHistory () const
 
const QualifiedNametagQName () const
 
const AtomicStringtagLowercaseLocalName () const
 
const AtomicStringvalue () const
 
const AtomicStringserializingValue () const
 
const QualifiedNameattribute () const
 
const AtomicStringattributeCanonicalLocalName () const
 
const AtomicStringargument () const
 
bool attributeValueMatchingIsCaseInsensitive () const
 
const Vector< AtomicString > * langArgumentList () const
 
const CSSSelectorListselectorList () const
 
void setValue (const AtomicString &, bool matchLowerCase=false)
 
void setAttribute (const QualifiedName &, bool)
 
void setAttributeValueMatchingIsCaseInsensitive (bool)
 
void setAttribute (const QualifiedName &, bool convertToLowercase, AttributeMatchType)
 
void setNth (int a, int b)
 
void setArgument (const AtomicString &)
 
void setLangArgumentList (std::unique_ptr< Vector< AtomicString >>)
 
void setSelectorList (std::unique_ptr< CSSSelectorList >)
 
bool parseNth () const
 
bool matchNth (int count) const
 
int nthA () const
 
int nthB () const
 
bool hasDescendantRelation () const
 
bool hasDescendantOrChildRelation () const
 
PseudoClassType pseudoClassType () const
 
void setPseudoClassType (PseudoClassType pseudoType)
 
PseudoElementType pseudoElementType () const
 
void setPseudoElementType (PseudoElementType pseudoElementType)
 
PagePseudoClassType pagePseudoClassType () const
 
void setPagePseudoType (PagePseudoClassType pagePseudoType)
 
bool matchesPseudoElement () const
 
bool isUnknownPseudoElement () const
 
bool isCustomPseudoElement () const
 
bool isWebKitCustomPseudoElement () const
 
bool isSiblingSelector () const
 
bool isAttributeSelector () const
 
RelationType relation () const
 
void setRelation (RelationType relation)
 
Match match () const
 
void setMatch (Match match)
 
bool isLastInSelectorList () const
 
void setLastInSelectorList ()
 
bool isLastInTagHistory () const
 
void setNotLastInTagHistory ()
 
bool isForPage () const
 
void setForPage ()
 

Static Public Member Functions

static unsigned addSpecificities (unsigned, unsigned)
 
static PseudoElementType parsePseudoElementType (const String &)
 
static PseudoId pseudoId (PseudoElementType)
 
static unsigned addSpecificities (unsigned, unsigned)
 
static PseudoElementType parsePseudoElementType (const String &)
 
static PseudoId pseudoId (PseudoElementType)
 

Static Public Attributes

static const unsigned maxValueMask = 0xffffff
 
static const unsigned idMask = 0xff0000
 
static const unsigned classMask = 0xff00
 
static const unsigned elementMask = 0xff
 

Member Enumeration Documentation

◆ AttributeMatchType [1/2]

Enumerator
CaseSensitive 
CaseInsensitive 
CaseSensitive 
CaseInsensitive 

◆ AttributeMatchType [2/2]

Enumerator
CaseSensitive 
CaseInsensitive 
CaseSensitive 
CaseInsensitive 

◆ MarginBoxType [1/2]

Enumerator
TopLeftCornerMarginBox 
TopLeftMarginBox 
TopCenterMarginBox 
TopRightMarginBox 
TopRightCornerMarginBox 
BottomLeftCornerMarginBox 
BottomLeftMarginBox 
BottomCenterMarginBox 
BottomRightMarginBox 
BottomRightCornerMarginBox 
LeftTopMarginBox 
LeftMiddleMarginBox 
LeftBottomMarginBox 
RightTopMarginBox 
RightMiddleMarginBox 
RightBottomMarginBox 
TopLeftCornerMarginBox 
TopLeftMarginBox 
TopCenterMarginBox 
TopRightMarginBox 
TopRightCornerMarginBox 
BottomLeftCornerMarginBox 
BottomLeftMarginBox 
BottomCenterMarginBox 
BottomRightMarginBox 
BottomRightCornerMarginBox 
LeftTopMarginBox 
LeftMiddleMarginBox 
LeftBottomMarginBox 
RightTopMarginBox 
RightMiddleMarginBox 
RightBottomMarginBox 

◆ MarginBoxType [2/2]

Enumerator
TopLeftCornerMarginBox 
TopLeftMarginBox 
TopCenterMarginBox 
TopRightMarginBox 
TopRightCornerMarginBox 
BottomLeftCornerMarginBox 
BottomLeftMarginBox 
BottomCenterMarginBox 
BottomRightMarginBox 
BottomRightCornerMarginBox 
LeftTopMarginBox 
LeftMiddleMarginBox 
LeftBottomMarginBox 
RightTopMarginBox 
RightMiddleMarginBox 
RightBottomMarginBox 
TopLeftCornerMarginBox 
TopLeftMarginBox 
TopCenterMarginBox 
TopRightMarginBox 
TopRightCornerMarginBox 
BottomLeftCornerMarginBox 
BottomLeftMarginBox 
BottomCenterMarginBox 
BottomRightMarginBox 
BottomRightCornerMarginBox 
LeftTopMarginBox 
LeftMiddleMarginBox 
LeftBottomMarginBox 
RightTopMarginBox 
RightMiddleMarginBox 
RightBottomMarginBox 

◆ Match [1/2]

Enumerator
Unknown 
Tag 
Id 
Class 
Exact 
Set 
List 
Hyphen 
PseudoClass 
PseudoElement 
Contain 
Begin 
End 
PagePseudoClass 
Unknown 
Tag 
Id 
Class 
Exact 
Set 
List 
Hyphen 
PseudoClass 
PseudoElement 
Contain 
Begin 
End 
PagePseudoClass 

◆ Match [2/2]

Enumerator
Unknown 
Tag 
Id 
Class 
Exact 
Set 
List 
Hyphen 
PseudoClass 
PseudoElement 
Contain 
Begin 
End 
PagePseudoClass 
Unknown 
Tag 
Id 
Class 
Exact 
Set 
List 
Hyphen 
PseudoClass 
PseudoElement 
Contain 
Begin 
End 
PagePseudoClass 

◆ PagePseudoClassType [1/2]

Enumerator
PagePseudoClassFirst 
PagePseudoClassLeft 
PagePseudoClassRight 
PagePseudoClassFirst 
PagePseudoClassLeft 
PagePseudoClassRight 

◆ PagePseudoClassType [2/2]

Enumerator
PagePseudoClassFirst 
PagePseudoClassLeft 
PagePseudoClassRight 
PagePseudoClassFirst 
PagePseudoClassLeft 
PagePseudoClassRight 

◆ PseudoClassType [1/2]

Enumerator
PseudoClassUnknown 
PseudoClassEmpty 
PseudoClassFirstChild 
PseudoClassFirstOfType 
PseudoClassLastChild 
PseudoClassLastOfType 
PseudoClassOnlyChild 
PseudoClassOnlyOfType 
PseudoClassNthChild 
PseudoClassNthOfType 
PseudoClassNthLastChild 
PseudoClassNthLastOfType 
PseudoClassLink 
PseudoClassVisited 
PseudoClassAny 
PseudoClassAnyLink 
PseudoClassAnyLinkDeprecated 
PseudoClassAutofill 
PseudoClassHover 
PseudoClassDrag 
PseudoClassFocus 
PseudoClassFocusWithin 
PseudoClassActive 
PseudoClassChecked 
PseudoClassEnabled 
PseudoClassFullPageMedia 
PseudoClassDefault 
PseudoClassDisabled 
PseudoClassMatches 
PseudoClassOptional 
PseudoClassPlaceholderShown 
PseudoClassRequired 
PseudoClassReadOnly 
PseudoClassReadWrite 
PseudoClassValid 
PseudoClassInvalid 
PseudoClassIndeterminate 
PseudoClassTarget 
PseudoClassLang 
PseudoClassNot 
PseudoClassRoot 
PseudoClassScope 
PseudoClassWindowInactive 
PseudoClassCornerPresent 
PseudoClassDecrement 
PseudoClassIncrement 
PseudoClassHorizontal 
PseudoClassVertical 
PseudoClassStart 
PseudoClassEnd 
PseudoClassDoubleButton 
PseudoClassSingleButton 
PseudoClassNoButton 
PseudoClassInRange 
PseudoClassOutOfRange 
PseudoClassHost 
PseudoClassDefined 
PseudoClassUnknown 
PseudoClassEmpty 
PseudoClassFirstChild 
PseudoClassFirstOfType 
PseudoClassLastChild 
PseudoClassLastOfType 
PseudoClassOnlyChild 
PseudoClassOnlyOfType 
PseudoClassNthChild 
PseudoClassNthOfType 
PseudoClassNthLastChild 
PseudoClassNthLastOfType 
PseudoClassLink 
PseudoClassVisited 
PseudoClassAny 
PseudoClassAnyLink 
PseudoClassAnyLinkDeprecated 
PseudoClassAutofill 
PseudoClassHover 
PseudoClassDrag 
PseudoClassFocus 
PseudoClassFocusWithin 
PseudoClassActive 
PseudoClassChecked 
PseudoClassEnabled 
PseudoClassFullPageMedia 
PseudoClassDefault 
PseudoClassDisabled 
PseudoClassMatches 
PseudoClassOptional 
PseudoClassPlaceholderShown 
PseudoClassRequired 
PseudoClassReadOnly 
PseudoClassReadWrite 
PseudoClassValid 
PseudoClassInvalid 
PseudoClassIndeterminate 
PseudoClassTarget 
PseudoClassLang 
PseudoClassNot 
PseudoClassRoot 
PseudoClassScope 
PseudoClassWindowInactive 
PseudoClassCornerPresent 
PseudoClassDecrement 
PseudoClassIncrement 
PseudoClassHorizontal 
PseudoClassVertical 
PseudoClassStart 
PseudoClassEnd 
PseudoClassDoubleButton 
PseudoClassSingleButton 
PseudoClassNoButton 
PseudoClassInRange 
PseudoClassOutOfRange 
PseudoClassHost 
PseudoClassDefined 

◆ PseudoClassType [2/2]

Enumerator
PseudoClassUnknown 
PseudoClassEmpty 
PseudoClassFirstChild 
PseudoClassFirstOfType 
PseudoClassLastChild 
PseudoClassLastOfType 
PseudoClassOnlyChild 
PseudoClassOnlyOfType 
PseudoClassNthChild 
PseudoClassNthOfType 
PseudoClassNthLastChild 
PseudoClassNthLastOfType 
PseudoClassLink 
PseudoClassVisited 
PseudoClassAny 
PseudoClassAnyLink 
PseudoClassAnyLinkDeprecated 
PseudoClassAutofill 
PseudoClassHover 
PseudoClassDrag 
PseudoClassFocus 
PseudoClassFocusWithin 
PseudoClassActive 
PseudoClassChecked 
PseudoClassEnabled 
PseudoClassFullPageMedia 
PseudoClassDefault 
PseudoClassDisabled 
PseudoClassMatches 
PseudoClassOptional 
PseudoClassPlaceholderShown 
PseudoClassRequired 
PseudoClassReadOnly 
PseudoClassReadWrite 
PseudoClassValid 
PseudoClassInvalid 
PseudoClassIndeterminate 
PseudoClassTarget 
PseudoClassLang 
PseudoClassNot 
PseudoClassRoot 
PseudoClassScope 
PseudoClassWindowInactive 
PseudoClassCornerPresent 
PseudoClassDecrement 
PseudoClassIncrement 
PseudoClassHorizontal 
PseudoClassVertical 
PseudoClassStart 
PseudoClassEnd 
PseudoClassDoubleButton 
PseudoClassSingleButton 
PseudoClassNoButton 
PseudoClassInRange 
PseudoClassOutOfRange 
PseudoClassHost 
PseudoClassDefined 
PseudoClassUnknown 
PseudoClassEmpty 
PseudoClassFirstChild 
PseudoClassFirstOfType 
PseudoClassLastChild 
PseudoClassLastOfType 
PseudoClassOnlyChild 
PseudoClassOnlyOfType 
PseudoClassNthChild 
PseudoClassNthOfType 
PseudoClassNthLastChild 
PseudoClassNthLastOfType 
PseudoClassLink 
PseudoClassVisited 
PseudoClassAny 
PseudoClassAnyLink 
PseudoClassAnyLinkDeprecated 
PseudoClassAutofill 
PseudoClassHover 
PseudoClassDrag 
PseudoClassFocus 
PseudoClassFocusWithin 
PseudoClassActive 
PseudoClassChecked 
PseudoClassEnabled 
PseudoClassFullPageMedia 
PseudoClassDefault 
PseudoClassDisabled 
PseudoClassMatches 
PseudoClassOptional 
PseudoClassPlaceholderShown 
PseudoClassRequired 
PseudoClassReadOnly 
PseudoClassReadWrite 
PseudoClassValid 
PseudoClassInvalid 
PseudoClassIndeterminate 
PseudoClassTarget 
PseudoClassLang 
PseudoClassNot 
PseudoClassRoot 
PseudoClassScope 
PseudoClassWindowInactive 
PseudoClassCornerPresent 
PseudoClassDecrement 
PseudoClassIncrement 
PseudoClassHorizontal 
PseudoClassVertical 
PseudoClassStart 
PseudoClassEnd 
PseudoClassDoubleButton 
PseudoClassSingleButton 
PseudoClassNoButton 
PseudoClassInRange 
PseudoClassOutOfRange 
PseudoClassHost 
PseudoClassDefined 

◆ PseudoElementType [1/2]

Enumerator
PseudoElementUnknown 
PseudoElementAfter 
PseudoElementBefore 
PseudoElementFirstLetter 
PseudoElementFirstLine 
PseudoElementResizer 
PseudoElementScrollbar 
PseudoElementScrollbarButton 
PseudoElementScrollbarCorner 
PseudoElementScrollbarThumb 
PseudoElementScrollbarTrack 
PseudoElementScrollbarTrackPiece 
PseudoElementSelection 
PseudoElementSlotted 
PseudoElementUserAgentCustom 
PseudoElementWebKitCustom 
PseudoElementWebKitCustomLegacyPrefixed 
PseudoElementUnknown 
PseudoElementAfter 
PseudoElementBefore 
PseudoElementFirstLetter 
PseudoElementFirstLine 
PseudoElementResizer 
PseudoElementScrollbar 
PseudoElementScrollbarButton 
PseudoElementScrollbarCorner 
PseudoElementScrollbarThumb 
PseudoElementScrollbarTrack 
PseudoElementScrollbarTrackPiece 
PseudoElementSelection 
PseudoElementSlotted 
PseudoElementUserAgentCustom 
PseudoElementWebKitCustom 
PseudoElementWebKitCustomLegacyPrefixed 

◆ PseudoElementType [2/2]

Enumerator
PseudoElementUnknown 
PseudoElementAfter 
PseudoElementBefore 
PseudoElementFirstLetter 
PseudoElementFirstLine 
PseudoElementResizer 
PseudoElementScrollbar 
PseudoElementScrollbarButton 
PseudoElementScrollbarCorner 
PseudoElementScrollbarThumb 
PseudoElementScrollbarTrack 
PseudoElementScrollbarTrackPiece 
PseudoElementSelection 
PseudoElementSlotted 
PseudoElementUserAgentCustom 
PseudoElementWebKitCustom 
PseudoElementWebKitCustomLegacyPrefixed 
PseudoElementUnknown 
PseudoElementAfter 
PseudoElementBefore 
PseudoElementFirstLetter 
PseudoElementFirstLine 
PseudoElementResizer 
PseudoElementScrollbar 
PseudoElementScrollbarButton 
PseudoElementScrollbarCorner 
PseudoElementScrollbarThumb 
PseudoElementScrollbarTrack 
PseudoElementScrollbarTrackPiece 
PseudoElementSelection 
PseudoElementSlotted 
PseudoElementUserAgentCustom 
PseudoElementWebKitCustom 
PseudoElementWebKitCustomLegacyPrefixed 

◆ RelationType [1/2]

Enumerator
Subselector 
DescendantSpace 
Child 
DirectAdjacent 
IndirectAdjacent 
ShadowDescendant 
Subselector 
DescendantSpace 
Child 
DirectAdjacent 
IndirectAdjacent 
ShadowDescendant 

◆ RelationType [2/2]

Enumerator
Subselector 
DescendantSpace 
Child 
DirectAdjacent 
IndirectAdjacent 
ShadowDescendant 
Subselector 
DescendantSpace 
Child 
DirectAdjacent 
IndirectAdjacent 
ShadowDescendant 

Constructor & Destructor Documentation

◆ CSSSelector() [1/6]

WebCore::CSSSelector::CSSSelector ( )
inline

◆ CSSSelector() [2/6]

WebCore::CSSSelector::CSSSelector ( const CSSSelector o)
inline

◆ CSSSelector() [3/6]

WebCore::CSSSelector::CSSSelector ( const QualifiedName tagQName,
bool  tagIsForNamespaceRule = false 
)
explicit

◆ ~CSSSelector() [1/2]

WebCore::CSSSelector::~CSSSelector ( )
inline

◆ CSSSelector() [4/6]

WebCore::CSSSelector::CSSSelector ( )

◆ CSSSelector() [5/6]

WebCore::CSSSelector::CSSSelector ( const CSSSelector )

◆ CSSSelector() [6/6]

WebCore::CSSSelector::CSSSelector ( const QualifiedName ,
bool  tagIsForNamespaceRule = false 
)
explicit

◆ ~CSSSelector() [2/2]

WebCore::CSSSelector::~CSSSelector ( )

Member Function Documentation

◆ addSpecificities() [1/2]

unsigned WebCore::CSSSelector::addSpecificities ( unsigned  a,
unsigned  b 
)
static

◆ addSpecificities() [2/2]

static unsigned WebCore::CSSSelector::addSpecificities ( unsigned  ,
unsigned   
)
static

◆ argument() [1/2]

const AtomicString& WebCore::CSSSelector::argument ( ) const
inline

◆ argument() [2/2]

const AtomicString& WebCore::CSSSelector::argument ( ) const
inline

◆ attribute() [1/2]

const QualifiedName& WebCore::CSSSelector::attribute ( ) const

◆ attribute() [2/2]

const QualifiedName & WebCore::CSSSelector::attribute ( ) const
inline

◆ attributeCanonicalLocalName() [1/2]

const AtomicString& WebCore::CSSSelector::attributeCanonicalLocalName ( ) const

◆ attributeCanonicalLocalName() [2/2]

const AtomicString & WebCore::CSSSelector::attributeCanonicalLocalName ( ) const
inline

◆ attributeValueMatchingIsCaseInsensitive() [1/2]

bool WebCore::CSSSelector::attributeValueMatchingIsCaseInsensitive ( ) const
inline

◆ attributeValueMatchingIsCaseInsensitive() [2/2]

bool WebCore::CSSSelector::attributeValueMatchingIsCaseInsensitive ( ) const

◆ hasDescendantOrChildRelation() [1/2]

bool WebCore::CSSSelector::hasDescendantOrChildRelation ( ) const
inline

◆ hasDescendantOrChildRelation() [2/2]

bool WebCore::CSSSelector::hasDescendantOrChildRelation ( ) const
inline

◆ hasDescendantRelation() [1/2]

bool WebCore::CSSSelector::hasDescendantRelation ( ) const
inline

◆ hasDescendantRelation() [2/2]

bool WebCore::CSSSelector::hasDescendantRelation ( ) const
inline

◆ isAttributeSelector() [1/2]

bool WebCore::CSSSelector::isAttributeSelector ( ) const
inline

◆ isAttributeSelector() [2/2]

bool WebCore::CSSSelector::isAttributeSelector ( ) const

◆ isCustomPseudoElement() [1/2]

bool WebCore::CSSSelector::isCustomPseudoElement ( ) const
inline

◆ isCustomPseudoElement() [2/2]

bool WebCore::CSSSelector::isCustomPseudoElement ( ) const

◆ isForPage() [1/2]

bool WebCore::CSSSelector::isForPage ( ) const
inline

◆ isForPage() [2/2]

bool WebCore::CSSSelector::isForPage ( ) const
inline

◆ isLastInSelectorList() [1/2]

bool WebCore::CSSSelector::isLastInSelectorList ( ) const
inline

◆ isLastInSelectorList() [2/2]

bool WebCore::CSSSelector::isLastInSelectorList ( ) const
inline

◆ isLastInTagHistory() [1/2]

bool WebCore::CSSSelector::isLastInTagHistory ( ) const
inline

◆ isLastInTagHistory() [2/2]

bool WebCore::CSSSelector::isLastInTagHistory ( ) const
inline

◆ isSiblingSelector() [1/2]

bool WebCore::CSSSelector::isSiblingSelector ( ) const
inline

◆ isSiblingSelector() [2/2]

bool WebCore::CSSSelector::isSiblingSelector ( ) const

◆ isUnknownPseudoElement() [1/2]

bool WebCore::CSSSelector::isUnknownPseudoElement ( ) const
inline

◆ isUnknownPseudoElement() [2/2]

bool WebCore::CSSSelector::isUnknownPseudoElement ( ) const

◆ isWebKitCustomPseudoElement() [1/2]

bool WebCore::CSSSelector::isWebKitCustomPseudoElement ( ) const

◆ isWebKitCustomPseudoElement() [2/2]

bool WebCore::CSSSelector::isWebKitCustomPseudoElement ( ) const
inline

◆ langArgumentList() [1/2]

const Vector<AtomicString>* WebCore::CSSSelector::langArgumentList ( ) const
inline

◆ langArgumentList() [2/2]

const Vector<AtomicString>* WebCore::CSSSelector::langArgumentList ( ) const
inline

◆ match() [1/2]

Match WebCore::CSSSelector::match ( ) const
inline

◆ match() [2/2]

Match WebCore::CSSSelector::match ( ) const
inline

◆ matchesPseudoElement() [1/2]

bool WebCore::CSSSelector::matchesPseudoElement ( ) const
inline

◆ matchesPseudoElement() [2/2]

bool WebCore::CSSSelector::matchesPseudoElement ( ) const

◆ matchNth() [1/2]

bool WebCore::CSSSelector::matchNth ( int  count) const

◆ matchNth() [2/2]

bool WebCore::CSSSelector::matchNth ( int  count) const

◆ nthA() [1/2]

int WebCore::CSSSelector::nthA ( ) const

◆ nthA() [2/2]

int WebCore::CSSSelector::nthA ( ) const

◆ nthB() [1/2]

int WebCore::CSSSelector::nthB ( ) const

◆ nthB() [2/2]

int WebCore::CSSSelector::nthB ( ) const

◆ operator==() [1/2]

bool WebCore::CSSSelector::operator== ( const CSSSelector ) const

◆ operator==() [2/2]

bool WebCore::CSSSelector::operator== ( const CSSSelector other) const

◆ pagePseudoClassType() [1/2]

PagePseudoClassType WebCore::CSSSelector::pagePseudoClassType ( ) const
inline

◆ pagePseudoClassType() [2/2]

PagePseudoClassType WebCore::CSSSelector::pagePseudoClassType ( ) const
inline

◆ parseNth() [1/2]

bool WebCore::CSSSelector::parseNth ( ) const

◆ parseNth() [2/2]

bool WebCore::CSSSelector::parseNth ( ) const

◆ parsePseudoElementType() [1/2]

CSSSelector::PseudoElementType WebCore::CSSSelector::parsePseudoElementType ( const String name)
static

◆ parsePseudoElementType() [2/2]

static PseudoElementType WebCore::CSSSelector::parsePseudoElementType ( const String )
static

◆ pseudoClassType() [1/2]

PseudoClassType WebCore::CSSSelector::pseudoClassType ( ) const
inline

◆ pseudoClassType() [2/2]

PseudoClassType WebCore::CSSSelector::pseudoClassType ( ) const
inline

◆ pseudoElementType() [1/2]

PseudoElementType WebCore::CSSSelector::pseudoElementType ( ) const
inline

◆ pseudoElementType() [2/2]

PseudoElementType WebCore::CSSSelector::pseudoElementType ( ) const
inline

◆ pseudoId() [1/2]

PseudoId WebCore::CSSSelector::pseudoId ( PseudoElementType  type)
static

◆ pseudoId() [2/2]

static PseudoId WebCore::CSSSelector::pseudoId ( PseudoElementType  )
static

◆ relation() [1/2]

RelationType WebCore::CSSSelector::relation ( ) const
inline

◆ relation() [2/2]

RelationType WebCore::CSSSelector::relation ( ) const
inline

◆ selectorList() [1/2]

const CSSSelectorList* WebCore::CSSSelector::selectorList ( ) const
inline

◆ selectorList() [2/2]

const CSSSelectorList* WebCore::CSSSelector::selectorList ( ) const
inline

◆ selectorText() [1/2]

String WebCore::CSSSelector::selectorText ( const String rightSide = emptyString()) const

Re-create selector text from selector's data

◆ selectorText() [2/2]

String WebCore::CSSSelector::selectorText ( const String = emptyString()) const

Re-create selector text from selector's data

◆ serializingValue() [1/2]

const AtomicString& WebCore::CSSSelector::serializingValue ( ) const

◆ serializingValue() [2/2]

const AtomicString & WebCore::CSSSelector::serializingValue ( ) const
inline

◆ setArgument() [1/2]

void WebCore::CSSSelector::setArgument ( const AtomicString )

◆ setArgument() [2/2]

void WebCore::CSSSelector::setArgument ( const AtomicString value)

◆ setAttribute() [1/4]

void WebCore::CSSSelector::setAttribute ( const QualifiedName ,
bool   
)

◆ setAttribute() [2/4]

void WebCore::CSSSelector::setAttribute ( const QualifiedName value,
bool  isCaseInsensitive 
)

◆ setAttribute() [3/4]

void WebCore::CSSSelector::setAttribute ( const QualifiedName ,
bool  convertToLowercase,
AttributeMatchType   
)

◆ setAttribute() [4/4]

void WebCore::CSSSelector::setAttribute ( const QualifiedName value,
bool  convertToLowercase,
AttributeMatchType  matchType 
)

◆ setAttributeValueMatchingIsCaseInsensitive() [1/2]

void WebCore::CSSSelector::setAttributeValueMatchingIsCaseInsensitive ( bool  )

◆ setAttributeValueMatchingIsCaseInsensitive() [2/2]

void WebCore::CSSSelector::setAttributeValueMatchingIsCaseInsensitive ( bool  isCaseInsensitive)
inline

◆ setForPage() [1/2]

void WebCore::CSSSelector::setForPage ( )
inline

◆ setForPage() [2/2]

void WebCore::CSSSelector::setForPage ( )
inline

◆ setLangArgumentList() [1/2]

void WebCore::CSSSelector::setLangArgumentList ( std::unique_ptr< Vector< AtomicString >>  )

◆ setLangArgumentList() [2/2]

void WebCore::CSSSelector::setLangArgumentList ( std::unique_ptr< Vector< AtomicString >>  argumentList)

◆ setLastInSelectorList() [1/2]

void WebCore::CSSSelector::setLastInSelectorList ( )
inline

◆ setLastInSelectorList() [2/2]

void WebCore::CSSSelector::setLastInSelectorList ( )
inline

◆ setMatch() [1/2]

void WebCore::CSSSelector::setMatch ( Match  match)
inline

◆ setMatch() [2/2]

void WebCore::CSSSelector::setMatch ( Match  match)
inline

◆ setNotLastInTagHistory() [1/2]

void WebCore::CSSSelector::setNotLastInTagHistory ( )
inline

◆ setNotLastInTagHistory() [2/2]

void WebCore::CSSSelector::setNotLastInTagHistory ( )
inline

◆ setNth() [1/2]

void WebCore::CSSSelector::setNth ( int  a,
int  b 
)

◆ setNth() [2/2]

void WebCore::CSSSelector::setNth ( int  a,
int  b 
)

◆ setPagePseudoType() [1/2]

void WebCore::CSSSelector::setPagePseudoType ( PagePseudoClassType  pagePseudoType)
inline

◆ setPagePseudoType() [2/2]

void WebCore::CSSSelector::setPagePseudoType ( PagePseudoClassType  pagePseudoType)
inline

◆ setPseudoClassType() [1/2]

void WebCore::CSSSelector::setPseudoClassType ( PseudoClassType  pseudoType)
inline

◆ setPseudoClassType() [2/2]

void WebCore::CSSSelector::setPseudoClassType ( PseudoClassType  pseudoType)
inline

◆ setPseudoElementType() [1/2]

void WebCore::CSSSelector::setPseudoElementType ( PseudoElementType  pseudoElementType)
inline

◆ setPseudoElementType() [2/2]

void WebCore::CSSSelector::setPseudoElementType ( PseudoElementType  pseudoElementType)
inline

◆ setRelation() [1/2]

void WebCore::CSSSelector::setRelation ( RelationType  relation)
inline

◆ setRelation() [2/2]

void WebCore::CSSSelector::setRelation ( RelationType  relation)
inline

◆ setSelectorList() [1/2]

void WebCore::CSSSelector::setSelectorList ( std::unique_ptr< CSSSelectorList selectorList)

◆ setSelectorList() [2/2]

void WebCore::CSSSelector::setSelectorList ( std::unique_ptr< CSSSelectorList )

◆ setValue() [1/2]

void WebCore::CSSSelector::setValue ( const AtomicString value,
bool  matchLowerCase = false 
)
inline

◆ setValue() [2/2]

void WebCore::CSSSelector::setValue ( const AtomicString ,
bool  matchLowerCase = false 
)

◆ simpleSelectorSpecificity() [1/2]

unsigned WebCore::CSSSelector::simpleSelectorSpecificity ( ) const

◆ simpleSelectorSpecificity() [2/2]

unsigned WebCore::CSSSelector::simpleSelectorSpecificity ( ) const

◆ specificityForPage() [1/2]

unsigned WebCore::CSSSelector::specificityForPage ( ) const

◆ specificityForPage() [2/2]

unsigned WebCore::CSSSelector::specificityForPage ( ) const

◆ staticSpecificity() [1/2]

unsigned WebCore::CSSSelector::staticSpecificity ( bool &  ok) const

◆ staticSpecificity() [2/2]

unsigned WebCore::CSSSelector::staticSpecificity ( bool &  ok) const

◆ tagHistory() [1/2]

const CSSSelector* WebCore::CSSSelector::tagHistory ( ) const
inline

◆ tagHistory() [2/2]

const CSSSelector* WebCore::CSSSelector::tagHistory ( ) const
inline

◆ tagLowercaseLocalName() [1/2]

const AtomicString& WebCore::CSSSelector::tagLowercaseLocalName ( ) const

◆ tagLowercaseLocalName() [2/2]

const AtomicString & WebCore::CSSSelector::tagLowercaseLocalName ( ) const
inline

◆ tagQName() [1/2]

const QualifiedName & WebCore::CSSSelector::tagQName ( ) const
inline

◆ tagQName() [2/2]

const QualifiedName& WebCore::CSSSelector::tagQName ( ) const

◆ value() [1/2]

const AtomicString& WebCore::CSSSelector::value ( ) const

◆ value() [2/2]

const AtomicString & WebCore::CSSSelector::value ( ) const
inline

Member Data Documentation

◆ classMask

static const unsigned WebCore::CSSSelector::classMask = 0xff00
static

◆ elementMask

static const unsigned WebCore::CSSSelector::elementMask = 0xff
static

◆ idMask

static const unsigned WebCore::CSSSelector::idMask = 0xff0000
static

◆ maxValueMask

static const unsigned WebCore::CSSSelector::maxValueMask = 0xffffff
static

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