Class CompactPrintingVisitor
- java.lang.Object
-
- com.google.common.css.compiler.ast.DefaultTreeVisitor
-
- com.google.common.css.compiler.passes.CompactPrintingVisitor
-
- All Implemented Interfaces:
AtRuleHandler,CssTreeVisitor
- Direct Known Subclasses:
TemplateCompactPrintingVisitor
public class CompactPrintingVisitor extends DefaultTreeVisitor
A compact-printer forCssTreeinstances. TODO(oana): Change this pass to stop visiting when definitions are encountered. The same goes for its test.
-
-
Field Summary
Fields Modifier and Type Field Description protected CodeBufferbufferprotected VisitControllervisitController
-
Constructor Summary
Constructors Constructor Description CompactPrintingVisitor(VisitController visitController, CodeBuffer buffer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidappendValueNode(CssValueNode node)Appends the given value node to the buffer.booleanenterArgumentNode(CssValueNode node)Called before visiting aCssFunctionNode's sub treesbooleanenterAttributeSelector(CssAttributeSelectorNode node)Called before visiting aCssAttributeSelectorNode's sub treesbooleanenterBlock(CssBlockNode block)Called before visiting aCssBlockNode's sub treesbooleanenterCharSet(CssCharSetNode node)Called before visiting aCssCharSetNode's sub treesbooleanenterClassSelector(CssClassSelectorNode node)Called before visiting aCssClassSelectorNode's sub treesbooleanenterCombinator(CssCombinatorNode combinator)Called before visiting aCssCombinatorNode's sub treesbooleanenterCompositeValueNode(CssCompositeValueNode node)Called before visiting aCssValueNodethat is aCssCompositeValueNodebooleanenterCompositeValueNodeOperator(CssCompositeValueNode parent)Called between values in aCssCompositeValueNodebooleanenterConditionalBlock(CssConditionalBlockNode node)Called before visiting aCssConditionalBlockNode's sub treesbooleanenterDeclaration(CssDeclarationNode declaration)Called before visiting aCssDeclarationNode's sub treesbooleanenterDeclarationBlock(CssDeclarationBlockNode block)Called before visiting aCssDeclarationBlockNode's sub treesbooleanenterDefinition(CssDefinitionNode node)booleanenterFontFace(CssFontFaceNode node)Called before visiting aCssFontFaceNode's sub treesbooleanenterFunctionNode(CssFunctionNode node)Called before visiting aCssFunctionNode's sub treesbooleanenterIdSelector(CssIdSelectorNode node)Called before visiting aCssIdSelectorNode's sub treesbooleanenterImportRule(CssImportRuleNode node)Called before visiting aCssImportRuleNode's sub treesbooleanenterKey(CssKeyNode node)Called before visiting aCssKeyNode's sub treesbooleanenterKeyframesRule(CssKeyframesNode node)Called before visiting aCssKeyframesNode's sub treesbooleanenterMediaRule(CssMediaRuleNode node)Called before visiting aCssMediaRuleNode's sub treesbooleanenterMediaTypeListDelimiter(CssNodesListNode<? extends CssNode> node)Called between adjacent nodes in a media type listbooleanenterPageRule(CssPageRuleNode node)Called before visiting aCssPageRuleNode's sub treesbooleanenterPageSelector(CssPageSelectorNode node)Called before visiting aCssPageSelectorNode's sub treesbooleanenterPseudoClass(CssPseudoClassNode node)Called before visiting aCssPseudoClassNode's sub treesbooleanenterPseudoElement(CssPseudoElementNode node)Called before visiting aCssPseudoElementNode's sub treesbooleanenterSelector(CssSelectorNode selector)Called before visiting aCssSelectorNode's sub treesbooleanenterUnknownAtRule(CssUnknownAtRuleNode node)Called before visiting aCssUnknownAtRuleNode's sub treesbooleanenterValueNode(CssValueNode node)Called before visiting aCssValueNodethat is not aCssCompositeValueNodejava.lang.StringgetCompactPrintedString()Returns the CSS compacted printed output.voidleaveCharSet(CssCharSetNode node)Called after visiting aCssCharSetNode's sub treesvoidleaveCombinator(CssCombinatorNode combinator)Called after visiting aCssCombinatorNode's sub treesvoidleaveCompositeValueNode(CssCompositeValueNode node)Called after visiting aCssValueNodethat is aCssCompositeValueNodevoidleaveDeclaration(CssDeclarationNode declaration)Called after visiting aCssDeclarationNode's sub treesvoidleaveDeclarationBlock(CssDeclarationBlockNode block)Called after visiting aCssDeclarationBlockNode's sub treesvoidleaveFunctionNode(CssFunctionNode node)Called after visiting aCssFunctionNode's sub trees.voidleaveImportRule(CssImportRuleNode node)Called after visiting aCssImportRuleNode's sub treesvoidleaveKey(CssKeyNode key)Called after visiting aCssKeyNode's sub treesvoidleaveKeyBlock(CssKeyListNode block)Called after visiting aCssKeyListNode's sub treesvoidleaveKeyframesRule(CssKeyframesNode node)Called after visiting aCssKeyframesNode's sub treesvoidleaveMediaRule(CssMediaRuleNode node)Called after visiting aCssMediaRuleNode's sub treesvoidleavePseudoClass(CssPseudoClassNode node)Called after visiting aCssPseudoClassNode's sub treesvoidleaveSelector(CssSelectorNode selector)Called after visiting aCssSelectorNode's sub treesvoidleaveSelectorBlock(CssSelectorListNode node)Called after visiting aCssSelectorListNode's sub treesvoidleaveUnknownAtRule(CssUnknownAtRuleNode node)Called after visiting aCssUnknownAtRuleNode's sub treesvoidleaveValueNode(CssValueNode node)Called after visiting aCssValueNodethat is not aCssCompositeValueNode-
Methods inherited from class com.google.common.css.compiler.ast.DefaultTreeVisitor
enterComponent, enterConditionalRule, enterForLoop, enterImportBlock, enterKeyBlock, enterKeyframeRuleset, enterMixin, enterMixinDefinition, enterPropertyValue, enterProvideNode, enterRequireNode, enterRuleset, enterSelectorBlock, enterTree, leaveArgumentNode, leaveAttributeSelector, leaveBlock, leaveClassSelector, leaveComponent, leaveCompositeValueNodeOperator, leaveConditionalBlock, leaveConditionalRule, leaveDefinition, leaveFontFace, leaveForLoop, leaveIdSelector, leaveImportBlock, leaveKeyframeRuleset, leaveMediaTypeListDelimiter, leaveMixin, leaveMixinDefinition, leavePageRule, leavePageSelector, leavePropertyValue, leaveProvideNode, leavePseudoElement, leaveRequireNode, leaveRuleset, leaveTree
-
-
-
-
Field Detail
-
visitController
protected final VisitController visitController
-
buffer
protected final CodeBuffer buffer
-
-
Constructor Detail
-
CompactPrintingVisitor
public CompactPrintingVisitor(VisitController visitController, CodeBuffer buffer)
-
-
Method Detail
-
enterDefinition
public boolean enterDefinition(CssDefinitionNode node)
- Specified by:
enterDefinitionin interfaceAtRuleHandler- Overrides:
enterDefinitionin classDefaultTreeVisitor- Parameters:
node- node- Returns:
trueif the contents of the rule should be visited, false otherwise.AtRuleHandler.leaveDefinition(CssDefinitionNode)will still be called.
-
enterImportRule
public boolean enterImportRule(CssImportRuleNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssImportRuleNode's sub trees- Specified by:
enterImportRulein interfaceAtRuleHandler- Overrides:
enterImportRulein classDefaultTreeVisitor- Parameters:
node- node
-
leaveImportRule
public void leaveImportRule(CssImportRuleNode node)
Description copied from interface:AtRuleHandlerCalled after visiting aCssImportRuleNode's sub trees- Specified by:
leaveImportRulein interfaceAtRuleHandler- Overrides:
leaveImportRulein classDefaultTreeVisitor- Parameters:
node- node
-
enterMediaRule
public boolean enterMediaRule(CssMediaRuleNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssMediaRuleNode's sub trees- Specified by:
enterMediaRulein interfaceAtRuleHandler- Overrides:
enterMediaRulein classDefaultTreeVisitor- Parameters:
node- node
-
leaveMediaRule
public void leaveMediaRule(CssMediaRuleNode node)
Description copied from interface:AtRuleHandlerCalled after visiting aCssMediaRuleNode's sub trees- Specified by:
leaveMediaRulein interfaceAtRuleHandler- Overrides:
leaveMediaRulein classDefaultTreeVisitor- Parameters:
node- node
-
enterPageRule
public boolean enterPageRule(CssPageRuleNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssPageRuleNode's sub trees- Specified by:
enterPageRulein interfaceAtRuleHandler- Overrides:
enterPageRulein classDefaultTreeVisitor- Parameters:
node- node
-
enterPageSelector
public boolean enterPageSelector(CssPageSelectorNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssPageSelectorNode's sub trees- Specified by:
enterPageSelectorin interfaceAtRuleHandler- Overrides:
enterPageSelectorin classDefaultTreeVisitor- Parameters:
node- node
-
enterFontFace
public boolean enterFontFace(CssFontFaceNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssFontFaceNode's sub trees- Specified by:
enterFontFacein interfaceAtRuleHandler- Overrides:
enterFontFacein classDefaultTreeVisitor- Parameters:
node- node
-
enterCharSet
public boolean enterCharSet(CssCharSetNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssCharSetNode's sub trees- Specified by:
enterCharSetin interfaceAtRuleHandler- Overrides:
enterCharSetin classDefaultTreeVisitor- Parameters:
node- node
-
leaveCharSet
public void leaveCharSet(CssCharSetNode node)
Description copied from interface:AtRuleHandlerCalled after visiting aCssCharSetNode's sub trees- Specified by:
leaveCharSetin interfaceAtRuleHandler- Overrides:
leaveCharSetin classDefaultTreeVisitor- Parameters:
node- node
-
enterSelector
public boolean enterSelector(CssSelectorNode selector)
Description copied from interface:CssTreeVisitorCalled before visiting aCssSelectorNode's sub trees- Specified by:
enterSelectorin interfaceCssTreeVisitor- Overrides:
enterSelectorin classDefaultTreeVisitor
-
leaveSelector
public void leaveSelector(CssSelectorNode selector)
Description copied from interface:CssTreeVisitorCalled after visiting aCssSelectorNode's sub trees- Specified by:
leaveSelectorin interfaceCssTreeVisitor- Overrides:
leaveSelectorin classDefaultTreeVisitor
-
enterClassSelector
public boolean enterClassSelector(CssClassSelectorNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssClassSelectorNode's sub trees- Specified by:
enterClassSelectorin interfaceCssTreeVisitor- Overrides:
enterClassSelectorin classDefaultTreeVisitor
-
enterIdSelector
public boolean enterIdSelector(CssIdSelectorNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssIdSelectorNode's sub trees- Specified by:
enterIdSelectorin interfaceCssTreeVisitor- Overrides:
enterIdSelectorin classDefaultTreeVisitor
-
enterPseudoClass
public boolean enterPseudoClass(CssPseudoClassNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssPseudoClassNode's sub trees- Specified by:
enterPseudoClassin interfaceCssTreeVisitor- Overrides:
enterPseudoClassin classDefaultTreeVisitor
-
leavePseudoClass
public void leavePseudoClass(CssPseudoClassNode node)
Description copied from interface:CssTreeVisitorCalled after visiting aCssPseudoClassNode's sub trees- Specified by:
leavePseudoClassin interfaceCssTreeVisitor- Overrides:
leavePseudoClassin classDefaultTreeVisitor
-
enterPseudoElement
public boolean enterPseudoElement(CssPseudoElementNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssPseudoElementNode's sub trees- Specified by:
enterPseudoElementin interfaceCssTreeVisitor- Overrides:
enterPseudoElementin classDefaultTreeVisitor
-
enterAttributeSelector
public boolean enterAttributeSelector(CssAttributeSelectorNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssAttributeSelectorNode's sub trees- Specified by:
enterAttributeSelectorin interfaceCssTreeVisitor- Overrides:
enterAttributeSelectorin classDefaultTreeVisitor
-
enterCombinator
public boolean enterCombinator(CssCombinatorNode combinator)
Description copied from interface:CssTreeVisitorCalled before visiting aCssCombinatorNode's sub trees- Specified by:
enterCombinatorin interfaceCssTreeVisitor- Overrides:
enterCombinatorin classDefaultTreeVisitor
-
leaveCombinator
public void leaveCombinator(CssCombinatorNode combinator)
Description copied from interface:CssTreeVisitorCalled after visiting aCssCombinatorNode's sub trees- Specified by:
leaveCombinatorin interfaceCssTreeVisitor- Overrides:
leaveCombinatorin classDefaultTreeVisitor
-
leaveSelectorBlock
public void leaveSelectorBlock(CssSelectorListNode node)
Description copied from interface:CssTreeVisitorCalled after visiting aCssSelectorListNode's sub trees- Specified by:
leaveSelectorBlockin interfaceCssTreeVisitor- Overrides:
leaveSelectorBlockin classDefaultTreeVisitor
-
enterDeclarationBlock
public boolean enterDeclarationBlock(CssDeclarationBlockNode block)
Description copied from interface:CssTreeVisitorCalled before visiting aCssDeclarationBlockNode's sub trees- Specified by:
enterDeclarationBlockin interfaceCssTreeVisitor- Overrides:
enterDeclarationBlockin classDefaultTreeVisitor
-
leaveDeclarationBlock
public void leaveDeclarationBlock(CssDeclarationBlockNode block)
Description copied from interface:CssTreeVisitorCalled after visiting aCssDeclarationBlockNode's sub trees- Specified by:
leaveDeclarationBlockin interfaceCssTreeVisitor- Overrides:
leaveDeclarationBlockin classDefaultTreeVisitor
-
enterBlock
public boolean enterBlock(CssBlockNode block)
Description copied from interface:CssTreeVisitorCalled before visiting aCssBlockNode's sub trees- Specified by:
enterBlockin interfaceCssTreeVisitor- Overrides:
enterBlockin classDefaultTreeVisitor
-
enterDeclaration
public boolean enterDeclaration(CssDeclarationNode declaration)
Description copied from interface:CssTreeVisitorCalled before visiting aCssDeclarationNode's sub trees- Specified by:
enterDeclarationin interfaceCssTreeVisitor- Overrides:
enterDeclarationin classDefaultTreeVisitor
-
leaveDeclaration
public void leaveDeclaration(CssDeclarationNode declaration)
Description copied from interface:CssTreeVisitorCalled after visiting aCssDeclarationNode's sub trees- Specified by:
leaveDeclarationin interfaceCssTreeVisitor- Overrides:
leaveDeclarationin classDefaultTreeVisitor
-
enterCompositeValueNode
public boolean enterCompositeValueNode(CssCompositeValueNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssValueNodethat is aCssCompositeValueNode- Specified by:
enterCompositeValueNodein interfaceCssTreeVisitor- Overrides:
enterCompositeValueNodein classDefaultTreeVisitor
-
leaveCompositeValueNode
public void leaveCompositeValueNode(CssCompositeValueNode node)
Description copied from interface:CssTreeVisitorCalled after visiting aCssValueNodethat is aCssCompositeValueNode- Specified by:
leaveCompositeValueNodein interfaceCssTreeVisitor- Overrides:
leaveCompositeValueNodein classDefaultTreeVisitor
-
enterValueNode
public boolean enterValueNode(CssValueNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssValueNodethat is not aCssCompositeValueNode- Specified by:
enterValueNodein interfaceCssTreeVisitor- Overrides:
enterValueNodein classDefaultTreeVisitor
-
leaveValueNode
public void leaveValueNode(CssValueNode node)
Description copied from interface:CssTreeVisitorCalled after visiting aCssValueNodethat is not aCssCompositeValueNode- Specified by:
leaveValueNodein interfaceCssTreeVisitor- Overrides:
leaveValueNodein classDefaultTreeVisitor
-
enterCompositeValueNodeOperator
public boolean enterCompositeValueNodeOperator(CssCompositeValueNode parent)
Description copied from interface:CssTreeVisitorCalled between values in aCssCompositeValueNode- Specified by:
enterCompositeValueNodeOperatorin interfaceCssTreeVisitor- Overrides:
enterCompositeValueNodeOperatorin classDefaultTreeVisitor
-
enterFunctionNode
public boolean enterFunctionNode(CssFunctionNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssFunctionNode's sub trees- Specified by:
enterFunctionNodein interfaceCssTreeVisitor- Overrides:
enterFunctionNodein classDefaultTreeVisitor
-
leaveFunctionNode
public void leaveFunctionNode(CssFunctionNode node)
Description copied from interface:CssTreeVisitorCalled after visiting aCssFunctionNode's sub trees.- Specified by:
leaveFunctionNodein interfaceCssTreeVisitor- Overrides:
leaveFunctionNodein classDefaultTreeVisitor
-
enterArgumentNode
public boolean enterArgumentNode(CssValueNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssFunctionNode's sub trees- Specified by:
enterArgumentNodein interfaceCssTreeVisitor- Overrides:
enterArgumentNodein classDefaultTreeVisitor
-
enterConditionalBlock
public boolean enterConditionalBlock(CssConditionalBlockNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssConditionalBlockNode's sub trees- Specified by:
enterConditionalBlockin interfaceCssTreeVisitor- Overrides:
enterConditionalBlockin classDefaultTreeVisitor
-
enterUnknownAtRule
public boolean enterUnknownAtRule(CssUnknownAtRuleNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssUnknownAtRuleNode's sub trees- Specified by:
enterUnknownAtRulein interfaceAtRuleHandler- Overrides:
enterUnknownAtRulein classDefaultTreeVisitor- Parameters:
node- node
-
enterMediaTypeListDelimiter
public boolean enterMediaTypeListDelimiter(CssNodesListNode<? extends CssNode> node)
Description copied from interface:AtRuleHandlerCalled between adjacent nodes in a media type list- Specified by:
enterMediaTypeListDelimiterin interfaceAtRuleHandler- Overrides:
enterMediaTypeListDelimiterin classDefaultTreeVisitor- Parameters:
node- node
-
leaveUnknownAtRule
public void leaveUnknownAtRule(CssUnknownAtRuleNode node)
Description copied from interface:AtRuleHandlerCalled after visiting aCssUnknownAtRuleNode's sub trees- Specified by:
leaveUnknownAtRulein interfaceAtRuleHandler- Overrides:
leaveUnknownAtRulein classDefaultTreeVisitor
-
enterKeyframesRule
public boolean enterKeyframesRule(CssKeyframesNode node)
Description copied from interface:AtRuleHandlerCalled before visiting aCssKeyframesNode's sub trees- Specified by:
enterKeyframesRulein interfaceAtRuleHandler- Overrides:
enterKeyframesRulein classDefaultTreeVisitor- Parameters:
node- node
-
leaveKeyframesRule
public void leaveKeyframesRule(CssKeyframesNode node)
Description copied from interface:AtRuleHandlerCalled after visiting aCssKeyframesNode's sub trees- Specified by:
leaveKeyframesRulein interfaceAtRuleHandler- Overrides:
leaveKeyframesRulein classDefaultTreeVisitor- Parameters:
node- node
-
enterKey
public boolean enterKey(CssKeyNode node)
Description copied from interface:CssTreeVisitorCalled before visiting aCssKeyNode's sub trees- Specified by:
enterKeyin interfaceCssTreeVisitor- Overrides:
enterKeyin classDefaultTreeVisitor
-
leaveKey
public void leaveKey(CssKeyNode key)
Description copied from interface:CssTreeVisitorCalled after visiting aCssKeyNode's sub trees- Specified by:
leaveKeyin interfaceCssTreeVisitor- Overrides:
leaveKeyin classDefaultTreeVisitor
-
leaveKeyBlock
public void leaveKeyBlock(CssKeyListNode block)
Description copied from interface:CssTreeVisitorCalled after visiting aCssKeyListNode's sub trees- Specified by:
leaveKeyBlockin interfaceCssTreeVisitor- Overrides:
leaveKeyBlockin classDefaultTreeVisitor
-
getCompactPrintedString
public java.lang.String getCompactPrintedString()
Returns the CSS compacted printed output.
-
appendValueNode
protected void appendValueNode(CssValueNode node)
Appends the given value node to the buffer.Subclasses can modify this to provide a different serialization for particular types of value nodes.
- Parameters:
node- the node to append
-
-