/// <summary>The <see cref="RulesetNode"/> visit implementation</summary> /// <param name="rulesetNode">The ruleset AST node</param> /// <returns>The modified AST node if modified otherwise the original node</returns> public override AstNode VisitRulesetNode(RulesetNode rulesetNode) { if (rulesetNode == null) { throw new ArgumentNullException("rulesetNode"); } try { // Validate the selectors for lower case rulesetNode.SelectorsGroupNode.SelectorNodes.ForEach(selectorNode => ValidateForLowerCase(selectorNode.MinifyPrint())); // Visit declarations rulesetNode.Declarations.ForEach(declarationNode => declarationNode.Accept(this)); } catch (BuildWorkflowException exception) { throw new WorkflowException(string.Format(CultureInfo.CurrentUICulture, CssStrings.CssLowercaseValidationParentNodeError, rulesetNode.PrettyPrint()), exception); } return(rulesetNode); }