Class CssPseudoClassNode
- java.lang.Object
-
- com.google.common.css.compiler.ast.CssNode
-
- com.google.common.css.compiler.ast.CssRefinerNode
-
- com.google.common.css.compiler.ast.CssPseudoClassNode
-
- All Implemented Interfaces:
Locatable
public class CssPseudoClassNode extends CssRefinerNode
ACssRefinerNodeimplementation that represents a pseudo-class. For example::visited,:nth-child(2n)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCssPseudoClassNode.FunctionTypeDetermines if the pseudo-class is a function and if so which one.-
Nested classes/interfaces inherited from class com.google.common.css.compiler.ast.CssRefinerNode
CssRefinerNode.Refiner
-
-
Field Summary
-
Fields inherited from class com.google.common.css.compiler.ast.CssRefinerNode
refinerName, refinerType
-
-
Constructor Summary
Constructors Constructor Description CssPseudoClassNode(CssPseudoClassNode node)CssPseudoClassNode(CssPseudoClassNode.FunctionType functionType, java.lang.String name, java.lang.String argument, SourceCodeLocation sourceCodeLocation)Constructor for function pseudo-classes except the negation function like:lang(en)or:nth-child(2n).CssPseudoClassNode(java.lang.String name, CssSelectorNode notSelector, SourceCodeLocation sourceCodeLocation)Constructor for the negation function pseudo-class.CssPseudoClassNode(java.lang.String name, SourceCodeLocation sourceCodeLocation)Constructor for non-function pseudo-classes like:linkor:visited
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CssPseudoClassNodedeepCopy()java.lang.StringgetArgument()CssPseudoClassNode.FunctionTypegetFunctionType()CssSelectorNodegetNotSelector()CssSelectorNode.SpecificitygetSpecificity()Returns the specificity of this pseudo-class or an old pseudo-element starting with a single colon.voidsetArgument(java.lang.String argument)java.lang.StringtoString()This is the default implementation oftoString().-
Methods inherited from class com.google.common.css.compiler.ast.CssRefinerNode
getPrefix, getRefinerName, getRefinerType, getSuffix
-
Methods inherited from class com.google.common.css.compiler.ast.CssNode
ancestors, appendComment, deepCopyNodes, equals, getComments, getParent, getShouldBeFlipped, getSourceCodeLocation, getVisitController, hasComment, hashCode, inFunArgs, setComments, setShouldBeFlipped, setSourceCodeLocation
-
-
-
-
Constructor Detail
-
CssPseudoClassNode
public CssPseudoClassNode(java.lang.String name, SourceCodeLocation sourceCodeLocation)Constructor for non-function pseudo-classes like:linkor:visited
-
CssPseudoClassNode
public CssPseudoClassNode(CssPseudoClassNode.FunctionType functionType, java.lang.String name, java.lang.String argument, SourceCodeLocation sourceCodeLocation)
Constructor for function pseudo-classes except the negation function like:lang(en)or:nth-child(2n).
-
CssPseudoClassNode
public CssPseudoClassNode(java.lang.String name, CssSelectorNode notSelector, SourceCodeLocation sourceCodeLocation)Constructor for the negation function pseudo-class.
-
CssPseudoClassNode
public CssPseudoClassNode(CssPseudoClassNode node)
-
-
Method Detail
-
deepCopy
public CssPseudoClassNode deepCopy()
-
getFunctionType
public CssPseudoClassNode.FunctionType getFunctionType()
-
getArgument
public java.lang.String getArgument()
-
setArgument
public void setArgument(java.lang.String argument)
-
getNotSelector
public CssSelectorNode getNotSelector()
-
getSpecificity
public CssSelectorNode.Specificity getSpecificity()
Returns the specificity of this pseudo-class or an old pseudo-element starting with a single colon.The :: notation for pseudo-elements is introduced in CSS level 3 in order to establish a discrimination between pseudo-classes and pseudo-elements. "For compatibility with existing style sheets, user agents must also accept the previous one-colon notation for pseudo-elements introduced in CSS levels 1 and 2 (namely, :first-line, :first-letter, :before and :after). This compatibility is not allowed for the new pseudo-elements introduced in this specification." http://www.w3.org/TR/css3-selectors/#target-pseudo
The negation pseudo-class itself does not influence the specificity. However, selectors inside the negation pseudo-class are counted like any other. Thus,
red.levelhas the same specificity as*:not(red.level).- Specified by:
getSpecificityin classCssRefinerNode
-
toString
public java.lang.String toString()
Description copied from class:CssNodeThis is the default implementation oftoString().Overriding this method should only be done for debugging or logging purposes, not for the actual functionality of the compiler. If a string representation of a tree is needed, define a Visitor that builds the desired representation.
- Overrides:
toStringin classCssRefinerNode- See Also:
Object.toString()
-
-