OSDN Git Service

change CoverageReporter/MainForm.cs
[codecoverage/main.git] / CoverageFramework / Element / Selector / XElementRangeSelectorPipe.cs
1 using System.Collections.Generic;\r
2 using System.Linq;\r
3 using System.Xml.Linq;\r
4 \r
5 namespace CoverageFramework.Element.Selector\r
6 {\r
7         public class XElementRangeSelectorPipe : IXElementRangeSelector\r
8         {\r
9                 private readonly IXElementRangeSelector _next;\r
10                 private readonly IXElementRangeSelector _prev;\r
11 \r
12                 public XElementRangeSelectorPipe(IXElementRangeSelector prev, IXElementRangeSelector next)\r
13                 {\r
14                         _prev = prev;\r
15                         _next = next;\r
16                 }\r
17 \r
18                 #region IXElementRangeSelector \83\81\83\93\83o\r
19 \r
20                 public IEnumerable<IEnumerable<XElement>> Select(XElement root)\r
21                 {\r
22                         return _prev.Select(root)\r
23                                 .SelectMany(block =>\r
24                                         block.SelectMany(e => _next.Select(e)));\r
25                 }\r
26 \r
27                 #endregion\r
28         }\r
29 }