OSDN Git Service

JavaのCST版を作成。補助ツールの改良。
[codecoverage/main.git] / CoverageFramework / Element / Selector / XElementSelectorPipe.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 XElementSelectorPipe : IXElementSelector\r
8         {\r
9                 private readonly IXElementSelector _next;\r
10                 private readonly IXElementSelector _prev;\r
11 \r
12                 public XElementSelectorPipe(IXElementSelector prev, IXElementSelector next)\r
13                 {\r
14                         _prev = prev;\r
15                         _next = next;\r
16                 }\r
17 \r
18                 #region IXElementSelector \83\81\83\93\83o\r
19 \r
20                 public IEnumerable<XElement> Select(XElement root)\r
21                 {\r
22                         return _prev.Select(root).SelectMany(e => _next.Select(e));\r
23                 }\r
24 \r
25                 #endregion\r
26         }\r
27 }