2 using System.Collections.Generic;
\r
3 using System.ComponentModel.Composition;
\r
6 using System.Xml.Linq;
\r
8 namespace CoverageFramework.Operator.Selector.Java2
\r
10 [Export(typeof(IXElementSelector))]
\r
11 public class StatementSelector : IXElementSelector
\r
13 private static readonly string[] StatementNames = {
\r
16 "IfThenElseStatement",
\r
17 "IfThenElseStatementNoShortIf",
\r
19 "BasicForStatement",
\r
20 "EnhancedForStatement",
\r
21 "ForStatementNoShortIf",
\r
24 "WhileStatementNoShortIf",
\r
25 // StatementWithoutTrailingSubstatement
\r
28 "ExpressionStatement",
\r
33 "ContinueStatement",
\r
35 "SynchronizedStatement",
\r
39 "LocalVariableDeclarationStatement",
\r
42 public IEnumerable<XElement> Select(XElement root)
\r
44 return root.Descendants()
\r
45 .Where(e => StatementNames.Any(e.Name.LocalName.EndsWith));
\r