/// <summary>The <see cref="HashClassAtNameAttribPseudoNegationNode"/> visit implementation</summary> /// <param name="hashClassAtNameAttribPseudoNegationNode">The hash class attrib pseudo negation node.</param> /// <returns>The modified AST node if modified otherwise the original node</returns> public override AstNode VisitHashClassAtNameAttribPseudoNegationNode(HashClassAtNameAttribPseudoNegationNode hashClassAtNameAttribPseudoNegationNode) { if (!string.IsNullOrWhiteSpace(hashClassAtNameAttribPseudoNegationNode.ReplacementToken)) { var newValue = ReplaceTokens(hashClassAtNameAttribPseudoNegationNode.ReplacementToken, this.resources); if (newValue.StartsWith("#", StringComparison.OrdinalIgnoreCase)) { return(new HashClassAtNameAttribPseudoNegationNode(newValue, null, null, null, null, null, null)); } if (newValue.StartsWith(".", StringComparison.OrdinalIgnoreCase)) { return(new HashClassAtNameAttribPseudoNegationNode(null, newValue, null, null, null, null, null)); } if (newValue.StartsWith(".", StringComparison.OrdinalIgnoreCase)) { return(new HashClassAtNameAttribPseudoNegationNode(null, newValue, null, null, null, null, null)); } return(new HashClassAtNameAttribPseudoNegationNode(null, null, newValue, null, null, null, null)); } return(base.VisitHashClassAtNameAttribPseudoNegationNode(hashClassAtNameAttribPseudoNegationNode)); }
/// <summary>The <see cref="HashClassAtNameAttribPseudoNegationNode"/> visit implementation</summary> /// <param name="hashClassAtNameAttribPseudoNegationNode">The hash class attrib pseudo negation node.</param> /// <returns>The modified AST node if modified otherwise the original node</returns> public override AstNode VisitHashClassAtNameAttribPseudoNegationNode(HashClassAtNameAttribPseudoNegationNode hashClassAtNameAttribPseudoNegationNode) { return(new HashClassAtNameAttribPseudoNegationNode( hashClassAtNameAttribPseudoNegationNode.Hash, hashClassAtNameAttribPseudoNegationNode.CssClass, hashClassAtNameAttribPseudoNegationNode.ReplacementToken, hashClassAtNameAttribPseudoNegationNode.AtName, hashClassAtNameAttribPseudoNegationNode.AttribNode != null ? (AttribNode)hashClassAtNameAttribPseudoNegationNode.AttribNode.Accept(this) : null, hashClassAtNameAttribPseudoNegationNode.PseudoNode != null ? (PseudoNode)hashClassAtNameAttribPseudoNegationNode.PseudoNode.Accept(this) : null, hashClassAtNameAttribPseudoNegationNode.NegationNode != null ? (NegationNode)hashClassAtNameAttribPseudoNegationNode.NegationNode.Accept(this) : null )); }
/// <summary>The <see cref="HashClassAtNameAttribPseudoNegationNode"/> visit implementation</summary> /// <param name="hashClassAtNameAttribPseudoNegationNode">The simpleSelector AST node</param> /// <returns>The modified AST node if modified otherwise the original node</returns> public override AstNode VisitHashClassAtNameAttribPseudoNegationNode(HashClassAtNameAttribPseudoNegationNode hashClassAtNameAttribPseudoNegationNode) { // [ HASH | class | atname | attrib | pseudo | negation ]* // | [ HASH | class | atname | attrib | pseudo | negation ]+ // Add the appropriate combinator or class output if (!string.IsNullOrWhiteSpace(hashClassAtNameAttribPseudoNegationNode.Hash)) { _printerFormatter.Append(hashClassAtNameAttribPseudoNegationNode.Hash); } else if (!string.IsNullOrWhiteSpace(hashClassAtNameAttribPseudoNegationNode.CssClass)) { _printerFormatter.Append(hashClassAtNameAttribPseudoNegationNode.CssClass); } else if (!string.IsNullOrWhiteSpace(hashClassAtNameAttribPseudoNegationNode.AtName)) { _printerFormatter.Append(hashClassAtNameAttribPseudoNegationNode.AtName); } else if (!string.IsNullOrWhiteSpace(hashClassAtNameAttribPseudoNegationNode.ReplacementToken)) { // TODO: REPLACECSSTOKENONPRINT _printerFormatter.Append(hashClassAtNameAttribPseudoNegationNode.ReplacementToken); } else if (hashClassAtNameAttribPseudoNegationNode.AttribNode != null) { hashClassAtNameAttribPseudoNegationNode.AttribNode.Accept(this); } else if (hashClassAtNameAttribPseudoNegationNode.PseudoNode != null) { hashClassAtNameAttribPseudoNegationNode.PseudoNode.Accept(this); } else if (hashClassAtNameAttribPseudoNegationNode.NegationNode != null) { hashClassAtNameAttribPseudoNegationNode.NegationNode.Accept(this); } return(hashClassAtNameAttribPseudoNegationNode); }
/// <summary>The <see cref="HashClassAtNameAttribPseudoNegationNode"/> visit implementation</summary> /// <param name="hashClassAtNameAttribPseudoNegationNode">The hash class attrib pseudo negation node.</param> /// <returns>The modified AST node if modified otherwise the original node</returns> public virtual AstNode VisitHashClassAtNameAttribPseudoNegationNode(HashClassAtNameAttribPseudoNegationNode hashClassAtNameAttribPseudoNegationNode) { return(hashClassAtNameAttribPseudoNegationNode); }