public override dotless.Core.Parser.Infrastructure.Nodes.Node Execute(dotless.Core.Parser.Infrastructure.Nodes.Node node, out bool visitDeeper) { visitDeeper = false; Root tree = node as Root; Comment c = null; List<IgnoreCommentMarker> markers = new List<IgnoreCommentMarker>(); IgnoreCommentMarker marker = null; if (tree != null && tree.Rules != null) { for (int ruleCount = 0; ruleCount < tree.Rules.Count; ruleCount++) { c = tree.Rules[ruleCount] as Comment; if (c != null) { if (c.Value == "// start-ignore") { marker = new IgnoreCommentMarker(); marker.Start = ruleCount; } if (c.Value == "// end-ignore") { if (marker != null) { marker.End = ruleCount; markers.Add(marker); marker = null; } } } } foreach (var m in markers) { for (int ruleCount = m.Start; ruleCount <= m.End; ruleCount++) { tree.Rules[ruleCount].ForceIgnoreOutput = true; } } } return node; }
public override dotless.Core.Parser.Infrastructure.Nodes.Node Execute(dotless.Core.Parser.Infrastructure.Nodes.Node node, out bool visitDeeper) { visitDeeper = false; Root tree = node as Root; Comment c = null; List <IgnoreCommentMarker> markers = new List <IgnoreCommentMarker>(); IgnoreCommentMarker marker = null; if (tree != null && tree.Rules != null) { for (int ruleCount = 0; ruleCount < tree.Rules.Count; ruleCount++) { c = tree.Rules[ruleCount] as Comment; if (c != null) { if (c.Value == "// start-ignore") { marker = new IgnoreCommentMarker(); marker.Start = ruleCount; } if (c.Value == "// end-ignore") { if (marker != null) { marker.End = ruleCount; markers.Add(marker); marker = null; } } } } foreach (var m in markers) { for (int ruleCount = m.Start; ruleCount <= m.End; ruleCount++) { tree.Rules[ruleCount].ForceIgnoreOutput = true; } } } return(node); }