CssSyntaxRewriter Class

Builds a new tree by visiting an old one and returning replacements.

public class CssSyntaxRewriter : CssSyntaxVisitor<SyntaxNode?>

Remarks

A node whose parts all come back unchanged is returned as it was, so rewriting a tree and changing nothing in it costs nothing and keeps every node.

Example

private sealed class RenameClass : CssSyntaxRewriter
{
    public override SyntaxNode? VisitClassSelector(CssClassSelectorSyntax node)
        => node.Name == "old" ? node.WithNameToken(SyntaxFactory.Identifier("new").WithTriviaFrom(node.NameToken)) : base.VisitClassSelector(node);
}
Inheritance
CssSyntaxVisitor<SyntaxNode?> CssSyntaxRewriter

Constructors

NameDescription
CssSyntaxRewriter()

CssSyntaxRewriter()

public CssSyntaxRewriter()

No documentation is available.

Methods

NameDescription
Visit(CssSyntaxNode?)
VisitAnPlusB(CssAnPlusBSyntax)
VisitAtRule(CssAtRuleSyntax)
VisitAttributeSelector(CssAttributeSelectorSyntax)
VisitBadDeclaration(CssBadDeclarationSyntax)
VisitBlock(CssBlockSyntax)
VisitBooleanFeature(CssBooleanFeatureSyntax)
VisitClassSelector(CssClassSelectorSyntax)
VisitCombinator(CssCombinatorSyntax)
VisitComparison(CssComparisonSyntax)
VisitComplexSelector(CssComplexSelectorSyntax)
VisitComplexSelectorPart(CssComplexSelectorPartSyntax)
VisitCompoundSelector(CssCompoundSelectorSyntax)
VisitConditionChain(CssConditionChainSyntax)
VisitConditionFunction(CssConditionFunctionSyntax)
VisitConditionPrelude(CssConditionPreludeSyntax)
VisitContainerCondition(CssContainerConditionSyntax)
VisitContainerPrelude(CssContainerPreludeSyntax)
VisitCustomMediaPrelude(CssCustomMediaPreludeSyntax)
VisitDeclaration(CssDeclarationSyntax)
VisitDeclarationCondition(CssDeclarationConditionSyntax)
VisitFeatureValue(CssFeatureValueSyntax)
VisitFunction(CssFunctionSyntax)
VisitFunctionalPseudoSelector(CssFunctionalPseudoSelectorSyntax)
VisitGeneralEnclosed(CssGeneralEnclosedSyntax)
VisitGenericPrelude(CssGenericPreludeSyntax)
VisitIdSelector(CssIdSelectorSyntax)
VisitIgnoredToken(CssIgnoredTokenSyntax)
VisitImportLayer(CssImportLayerSyntax)
VisitImportPrelude(CssImportPreludeSyntax)
VisitImportSupports(CssImportSupportsSyntax)
VisitImportant(CssImportantSyntax)
VisitInvalidMediaQuery(CssInvalidMediaQuerySyntax)
VisitInvalidSelector(CssInvalidSelectorSyntax)
VisitKeyframeSelector(CssKeyframeSelectorSyntax)
VisitKeyframeSelectorList(CssKeyframeSelectorListSyntax)
VisitLayerName(CssLayerNameSyntax)
VisitLayerPrelude(CssLayerPreludeSyntax)
VisitList(SyntaxTokenList)
VisitList(SyntaxTriviaList)Rewrites each trivium of a list, dropping the ones a rewrite turned into the default trivium.
VisitList<TNode>(SeparatedSyntaxList<TNode>)Rewrites the elements of a separated list, keeping its separators in place.
VisitList<TNode>(SyntaxList<TNode>)
VisitMediaConditionQuery(CssMediaConditionQuerySyntax)
VisitMediaQueryList(CssMediaQueryListSyntax)
VisitMediaTypeQuery(CssMediaTypeQuerySyntax)
VisitNameList(CssNameListSyntax)
VisitNamePrelude(CssNamePreludeSyntax)
VisitNamespacePrefix(CssNamespacePrefixSyntax)
VisitNamespacePrelude(CssNamespacePreludeSyntax)
VisitNestingSelector(CssNestingSelectorSyntax)
VisitNotCondition(CssNotConditionSyntax)
VisitNthArgument(CssNthArgumentSyntax)
VisitPageSelector(CssPageSelectorSyntax)
VisitPageSelectorList(CssPageSelectorListSyntax)
VisitParenthesizedCondition(CssParenthesizedConditionSyntax)
VisitPlainFeature(CssPlainFeatureSyntax)
VisitPseudoPage(CssPseudoPageSyntax)
VisitPseudoSelector(CssPseudoSelectorSyntax)
VisitQualifiedRule(CssQualifiedRuleSyntax)
VisitRangeFeature(CssRangeFeatureSyntax)
VisitScopeBoundary(CssScopeBoundarySyntax)
VisitScopePrelude(CssScopePreludeSyntax)
VisitSelectorList(CssSelectorListSyntax)
VisitSimpleBlock(CssSimpleBlockSyntax)
VisitSkippedText(CssSkippedTextSyntax)
VisitSkippedValue(CssSkippedValueSyntax)
VisitStyleSheet(CssStyleSheetSyntax)
VisitToken(SyntaxToken)Rewrites a token, putting the trivia around it through CssSyntaxRewriter.VisitTrivia.
VisitTokenValue(CssTokenValueSyntax)
VisitTrivia(SyntaxTrivia)
VisitTypeSelector(CssTypeSelectorSyntax)
VisitUniversalSelector(CssUniversalSelectorSyntax)
VisitViewTransitionPartSelector(CssViewTransitionPartSelectorSyntax)

Visit(CssSyntaxNode?)

CssSyntaxRewriter.cs
public override SyntaxNode? Visit(CssSyntaxNode? node)

Parameters

node CssSyntaxNode?

Returns

SyntaxNode?

Exceptions

InsufficientExecutionStackException
The style sheet is nested too deeply to rewrite.

VisitAnPlusB(CssAnPlusBSyntax)

Syntax.g.cs
public override SyntaxNode? VisitAnPlusB(CssAnPlusBSyntax node)

Parameters

node CssAnPlusBSyntax

Returns

SyntaxNode?

No documentation is available.

VisitAtRule(CssAtRuleSyntax)

Syntax.g.cs
public override SyntaxNode? VisitAtRule(CssAtRuleSyntax node)

Parameters

node CssAtRuleSyntax

Returns

SyntaxNode?

No documentation is available.

VisitAttributeSelector(CssAttributeSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitAttributeSelector(CssAttributeSelectorSyntax node)

No documentation is available.

VisitBadDeclaration(CssBadDeclarationSyntax)

Syntax.g.cs
public override SyntaxNode? VisitBadDeclaration(CssBadDeclarationSyntax node)

No documentation is available.

VisitBlock(CssBlockSyntax)

Syntax.g.cs
public override SyntaxNode? VisitBlock(CssBlockSyntax node)

Parameters

node CssBlockSyntax

Returns

SyntaxNode?

No documentation is available.

VisitBooleanFeature(CssBooleanFeatureSyntax)

Syntax.g.cs
public override SyntaxNode? VisitBooleanFeature(CssBooleanFeatureSyntax node)

No documentation is available.

VisitClassSelector(CssClassSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitClassSelector(CssClassSelectorSyntax node)

Parameters

node CssClassSelectorSyntax

Returns

SyntaxNode?

No documentation is available.

VisitCombinator(CssCombinatorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitCombinator(CssCombinatorSyntax node)

Parameters

node CssCombinatorSyntax

Returns

SyntaxNode?

No documentation is available.

VisitComparison(CssComparisonSyntax)

Syntax.g.cs
public override SyntaxNode? VisitComparison(CssComparisonSyntax node)

Parameters

node CssComparisonSyntax

Returns

SyntaxNode?

No documentation is available.

VisitComplexSelector(CssComplexSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitComplexSelector(CssComplexSelectorSyntax node)

No documentation is available.

VisitComplexSelectorPart(CssComplexSelectorPartSyntax)

Syntax.g.cs
public override SyntaxNode? VisitComplexSelectorPart(CssComplexSelectorPartSyntax node)

No documentation is available.

VisitCompoundSelector(CssCompoundSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitCompoundSelector(CssCompoundSelectorSyntax node)

No documentation is available.

VisitConditionChain(CssConditionChainSyntax)

Syntax.g.cs
public override SyntaxNode? VisitConditionChain(CssConditionChainSyntax node)

No documentation is available.

VisitConditionFunction(CssConditionFunctionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitConditionFunction(CssConditionFunctionSyntax node)

No documentation is available.

VisitConditionPrelude(CssConditionPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitConditionPrelude(CssConditionPreludeSyntax node)

No documentation is available.

VisitContainerCondition(CssContainerConditionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitContainerCondition(CssContainerConditionSyntax node)

No documentation is available.

VisitContainerPrelude(CssContainerPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitContainerPrelude(CssContainerPreludeSyntax node)

No documentation is available.

VisitCustomMediaPrelude(CssCustomMediaPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitCustomMediaPrelude(CssCustomMediaPreludeSyntax node)

No documentation is available.

VisitDeclaration(CssDeclarationSyntax)

Syntax.g.cs
public override SyntaxNode? VisitDeclaration(CssDeclarationSyntax node)

Parameters

node CssDeclarationSyntax

Returns

SyntaxNode?

No documentation is available.

VisitDeclarationCondition(CssDeclarationConditionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitDeclarationCondition(CssDeclarationConditionSyntax node)

No documentation is available.

VisitFeatureValue(CssFeatureValueSyntax)

Syntax.g.cs
public override SyntaxNode? VisitFeatureValue(CssFeatureValueSyntax node)

Parameters

node CssFeatureValueSyntax

Returns

SyntaxNode?

No documentation is available.

VisitFunction(CssFunctionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitFunction(CssFunctionSyntax node)

Parameters

node CssFunctionSyntax

Returns

SyntaxNode?

No documentation is available.

VisitFunctionalPseudoSelector(CssFunctionalPseudoSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitFunctionalPseudoSelector(CssFunctionalPseudoSelectorSyntax node)

No documentation is available.

VisitGeneralEnclosed(CssGeneralEnclosedSyntax)

Syntax.g.cs
public override SyntaxNode? VisitGeneralEnclosed(CssGeneralEnclosedSyntax node)

No documentation is available.

VisitGenericPrelude(CssGenericPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitGenericPrelude(CssGenericPreludeSyntax node)

No documentation is available.

VisitIdSelector(CssIdSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitIdSelector(CssIdSelectorSyntax node)

Parameters

node CssIdSelectorSyntax

Returns

SyntaxNode?

No documentation is available.

VisitIgnoredToken(CssIgnoredTokenSyntax)

Syntax.g.cs
public override SyntaxNode? VisitIgnoredToken(CssIgnoredTokenSyntax node)

Parameters

node CssIgnoredTokenSyntax

Returns

SyntaxNode?

No documentation is available.

VisitImportLayer(CssImportLayerSyntax)

Syntax.g.cs
public override SyntaxNode? VisitImportLayer(CssImportLayerSyntax node)

Parameters

node CssImportLayerSyntax

Returns

SyntaxNode?

No documentation is available.

VisitImportPrelude(CssImportPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitImportPrelude(CssImportPreludeSyntax node)

Parameters

node CssImportPreludeSyntax

Returns

SyntaxNode?

No documentation is available.

VisitImportSupports(CssImportSupportsSyntax)

Syntax.g.cs
public override SyntaxNode? VisitImportSupports(CssImportSupportsSyntax node)

No documentation is available.

VisitImportant(CssImportantSyntax)

Syntax.g.cs
public override SyntaxNode? VisitImportant(CssImportantSyntax node)

Parameters

node CssImportantSyntax

Returns

SyntaxNode?

No documentation is available.

VisitInvalidMediaQuery(CssInvalidMediaQuerySyntax)

Syntax.g.cs
public override SyntaxNode? VisitInvalidMediaQuery(CssInvalidMediaQuerySyntax node)

No documentation is available.

VisitInvalidSelector(CssInvalidSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitInvalidSelector(CssInvalidSelectorSyntax node)

No documentation is available.

VisitKeyframeSelector(CssKeyframeSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitKeyframeSelector(CssKeyframeSelectorSyntax node)

No documentation is available.

VisitKeyframeSelectorList(CssKeyframeSelectorListSyntax)

Syntax.g.cs
public override SyntaxNode? VisitKeyframeSelectorList(CssKeyframeSelectorListSyntax node)

No documentation is available.

VisitLayerName(CssLayerNameSyntax)

Syntax.g.cs
public override SyntaxNode? VisitLayerName(CssLayerNameSyntax node)

Parameters

node CssLayerNameSyntax

Returns

SyntaxNode?

No documentation is available.

VisitLayerPrelude(CssLayerPreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitLayerPrelude(CssLayerPreludeSyntax node)

Parameters

node CssLayerPreludeSyntax

Returns

SyntaxNode?

No documentation is available.

VisitList overloads

VisitList(SyntaxTokenList)

CssSyntaxRewriter.cs
public virtual SyntaxTokenList VisitList(SyntaxTokenList list)
Parameters
list SyntaxTokenList
Returns

SyntaxTokenList

No documentation is available.

VisitList(SyntaxTriviaList)

CssSyntaxRewriter.cs

Rewrites each trivium of a list, dropping the ones a rewrite turned into the default trivium.

public virtual SyntaxTriviaList VisitList(SyntaxTriviaList list)
Parameters
list SyntaxTriviaList
Returns

SyntaxTriviaList

VisitList<TNode>(SeparatedSyntaxList<TNode>)

CssSyntaxRewriter.cs

Rewrites the elements of a separated list, keeping its separators in place.

public virtual SeparatedSyntaxList<TNode> VisitList<TNode>(SeparatedSyntaxList<TNode> list) where TNode : CssSyntaxNode
Type parameters
TNode
Parameters
list SeparatedSyntaxList<TNode>
Returns

SeparatedSyntaxList<TNode>

VisitList<TNode>(SyntaxList<TNode>)

CssSyntaxRewriter.cs
public virtual SyntaxList<TNode> VisitList<TNode>(SyntaxList<TNode> list) where TNode : CssSyntaxNode
Type parameters
TNode
Parameters
list SyntaxList<TNode>
Returns

SyntaxList<TNode>

No documentation is available.

VisitMediaConditionQuery(CssMediaConditionQuerySyntax)

Syntax.g.cs
public override SyntaxNode? VisitMediaConditionQuery(CssMediaConditionQuerySyntax node)

No documentation is available.

VisitMediaQueryList(CssMediaQueryListSyntax)

Syntax.g.cs
public override SyntaxNode? VisitMediaQueryList(CssMediaQueryListSyntax node)

No documentation is available.

VisitMediaTypeQuery(CssMediaTypeQuerySyntax)

Syntax.g.cs
public override SyntaxNode? VisitMediaTypeQuery(CssMediaTypeQuerySyntax node)

No documentation is available.

VisitNameList(CssNameListSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNameList(CssNameListSyntax node)

Parameters

node CssNameListSyntax

Returns

SyntaxNode?

No documentation is available.

VisitNamePrelude(CssNamePreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNamePrelude(CssNamePreludeSyntax node)

Parameters

node CssNamePreludeSyntax

Returns

SyntaxNode?

No documentation is available.

VisitNamespacePrefix(CssNamespacePrefixSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNamespacePrefix(CssNamespacePrefixSyntax node)

No documentation is available.

VisitNamespacePrelude(CssNamespacePreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNamespacePrelude(CssNamespacePreludeSyntax node)

No documentation is available.

VisitNestingSelector(CssNestingSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNestingSelector(CssNestingSelectorSyntax node)

No documentation is available.

VisitNotCondition(CssNotConditionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNotCondition(CssNotConditionSyntax node)

Parameters

node CssNotConditionSyntax

Returns

SyntaxNode?

No documentation is available.

VisitNthArgument(CssNthArgumentSyntax)

Syntax.g.cs
public override SyntaxNode? VisitNthArgument(CssNthArgumentSyntax node)

Parameters

node CssNthArgumentSyntax

Returns

SyntaxNode?

No documentation is available.

VisitPageSelector(CssPageSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitPageSelector(CssPageSelectorSyntax node)

Parameters

node CssPageSelectorSyntax

Returns

SyntaxNode?

No documentation is available.

VisitPageSelectorList(CssPageSelectorListSyntax)

Syntax.g.cs
public override SyntaxNode? VisitPageSelectorList(CssPageSelectorListSyntax node)

No documentation is available.

VisitParenthesizedCondition(CssParenthesizedConditionSyntax)

Syntax.g.cs
public override SyntaxNode? VisitParenthesizedCondition(CssParenthesizedConditionSyntax node)

No documentation is available.

VisitPlainFeature(CssPlainFeatureSyntax)

Syntax.g.cs
public override SyntaxNode? VisitPlainFeature(CssPlainFeatureSyntax node)

Parameters

node CssPlainFeatureSyntax

Returns

SyntaxNode?

No documentation is available.

VisitPseudoPage(CssPseudoPageSyntax)

Syntax.g.cs
public override SyntaxNode? VisitPseudoPage(CssPseudoPageSyntax node)

Parameters

node CssPseudoPageSyntax

Returns

SyntaxNode?

No documentation is available.

VisitPseudoSelector(CssPseudoSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitPseudoSelector(CssPseudoSelectorSyntax node)

No documentation is available.

VisitQualifiedRule(CssQualifiedRuleSyntax)

Syntax.g.cs
public override SyntaxNode? VisitQualifiedRule(CssQualifiedRuleSyntax node)

Parameters

node CssQualifiedRuleSyntax

Returns

SyntaxNode?

No documentation is available.

VisitRangeFeature(CssRangeFeatureSyntax)

Syntax.g.cs
public override SyntaxNode? VisitRangeFeature(CssRangeFeatureSyntax node)

Parameters

node CssRangeFeatureSyntax

Returns

SyntaxNode?

No documentation is available.

VisitScopeBoundary(CssScopeBoundarySyntax)

Syntax.g.cs
public override SyntaxNode? VisitScopeBoundary(CssScopeBoundarySyntax node)

Parameters

node CssScopeBoundarySyntax

Returns

SyntaxNode?

No documentation is available.

VisitScopePrelude(CssScopePreludeSyntax)

Syntax.g.cs
public override SyntaxNode? VisitScopePrelude(CssScopePreludeSyntax node)

Parameters

node CssScopePreludeSyntax

Returns

SyntaxNode?

No documentation is available.

VisitSelectorList(CssSelectorListSyntax)

Syntax.g.cs
public override SyntaxNode? VisitSelectorList(CssSelectorListSyntax node)

Parameters

node CssSelectorListSyntax

Returns

SyntaxNode?

No documentation is available.

VisitSimpleBlock(CssSimpleBlockSyntax)

Syntax.g.cs
public override SyntaxNode? VisitSimpleBlock(CssSimpleBlockSyntax node)

Parameters

node CssSimpleBlockSyntax

Returns

SyntaxNode?

No documentation is available.

VisitSkippedText(CssSkippedTextSyntax)

Syntax.g.cs
public override SyntaxNode? VisitSkippedText(CssSkippedTextSyntax node)

Parameters

node CssSkippedTextSyntax

Returns

SyntaxNode?

No documentation is available.

VisitSkippedValue(CssSkippedValueSyntax)

Syntax.g.cs
public override SyntaxNode? VisitSkippedValue(CssSkippedValueSyntax node)

Parameters

node CssSkippedValueSyntax

Returns

SyntaxNode?

No documentation is available.

VisitStyleSheet(CssStyleSheetSyntax)

Syntax.g.cs
public override SyntaxNode? VisitStyleSheet(CssStyleSheetSyntax node)

Parameters

node CssStyleSheetSyntax

Returns

SyntaxNode?

No documentation is available.

VisitToken(SyntaxToken)

CssSyntaxRewriter.cs

Rewrites a token, putting the trivia around it through CssSyntaxRewriter.VisitTrivia.

public virtual SyntaxToken VisitToken(SyntaxToken token)

Parameters

token SyntaxToken

Returns

SyntaxToken

Remarks

Nothing else reaches a token's trivia, so an override of CssSyntaxRewriter.VisitTrivia would never be called if this returned the token untouched. A rewrite that returns the default trivium removes it.

VisitTokenValue(CssTokenValueSyntax)

Syntax.g.cs
public override SyntaxNode? VisitTokenValue(CssTokenValueSyntax node)

Parameters

node CssTokenValueSyntax

Returns

SyntaxNode?

No documentation is available.

VisitTrivia(SyntaxTrivia)

CssSyntaxRewriter.cs
public virtual SyntaxTrivia VisitTrivia(SyntaxTrivia trivia)

Parameters

trivia SyntaxTrivia

Returns

SyntaxTrivia

No documentation is available.

VisitTypeSelector(CssTypeSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitTypeSelector(CssTypeSelectorSyntax node)

Parameters

node CssTypeSelectorSyntax

Returns

SyntaxNode?

No documentation is available.

VisitUniversalSelector(CssUniversalSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitUniversalSelector(CssUniversalSelectorSyntax node)

No documentation is available.

VisitViewTransitionPartSelector(CssViewTransitionPartSelectorSyntax)

Syntax.g.cs
public override SyntaxNode? VisitViewTransitionPartSelector(CssViewTransitionPartSelectorSyntax node)

No documentation is available.