OSDN Git Service

change CoverageReporter/MainForm.cs
[codecoverage/main.git] / CoverageFramework / Operator / Selector / Java / LackingBlockStatementSelectorForJava.cs
1 using System.Collections.Generic;\r
2 using System.Linq;\r
3 using System.Xml.Linq;\r
4 using CoverageFramework.Utility;\r
5 \r
6 namespace CoverageFramework.Operator.Selector.Java\r
7 {\r
8         public class LackingBlockStatementSelectorForJava : IXElementRangeSelector\r
9         {\r
10                 #region IXElementRangeSelector メンバ\r
11 \r
12                 public IEnumerable<IEnumerable<XElement>> Select(XElement root)\r
13                 {\r
14                         var ifSelector = XElementSelectorUtil.Chain(\r
15                                 new IfSelectorForJava(),\r
16                                 new IfElseStatementSelectorForJava());\r
17 \r
18                         var whileForForEachSelector = XElementSelectorUtil.Chain(\r
19                                 XElementSelectorUtil.Merge(\r
20                                         new WhileSelectorForJava(),\r
21                                         new ForSelectorForJava(),\r
22                                         new ForEachSelectorForJava()),\r
23                                 new ForWhileStatementSelectorForJava());\r
24 \r
25                         var doWhileSelector = XElementSelectorUtil.Chain(\r
26                                 new DoWhileSelectorForJava(),\r
27                                 new DoWhileStatementSelectorForJava());\r
28 \r
29                         return XElementSelectorUtil.Merge(ifSelector, whileForForEachSelector, doWhileSelector)\r
30                                 .Select(root)\r
31                                 .Where(block_ => block_.First().Name.LocalName != "ABlock");\r
32                 }\r
33 \r
34                 #endregion\r
35         }\r
36 }