forked from zzzprojects/System.Linq.Dynamic.Core
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSystem.Linq.Dynamic.Core_ExpressionPromoter.htm
More file actions
150 lines (150 loc) · 44 KB
/
System.Linq.Dynamic.Core_ExpressionPromoter.htm
File metadata and controls
150 lines (150 loc) · 44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE html>
<html data-ng-app="coverageApp">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1" />
<title>System.Linq.Dynamic.Core.Parser.ExpressionPromoter - Coverage Report</title>
<link rel="stylesheet" type="text/css" href="report.css" />
</head><body data-ng-controller="DetailViewCtrl"><div class="container"><div class="containerleft">
<h1>Summary</h1>
<table class="overview table-fixed">
<colgroup>
<col class="column135" />
<col />
</colgroup>
<tbody>
<tr><th>Class:</th><td>System.Linq.Dynamic.Core.Parser.ExpressionPromoter</td></tr>
<tr><th>Assembly:</th><td>System.Linq.Dynamic.Core</td></tr>
<tr><th>File(s):</th><td><a href="#CUsersazureuserDocumentsGithubSystemLinqDynamicCoresrcSystemLinqDynamicCoreParserExpressionPromotercs" data-ng-click="navigateToHash('#CUsersazureuserDocumentsGithubSystemLinqDynamicCoresrcSystemLinqDynamicCoreParserExpressionPromotercs')">C:\Users\azureuser\Documents\Github\System.Linq.Dynamic.Core\src\System.Linq.Dynamic.Core\Parser\ExpressionPromoter.cs</a></td></tr>
<tr><th>Covered lines:</th><td>48</td></tr>
<tr><th>Uncovered lines:</th><td>3</td></tr>
<tr><th>Coverable lines:</th><td>51</td></tr>
<tr><th>Total lines:</th><td>101</td></tr>
<tr><th>Line coverage:</th><td>94.1%</td></tr>
<tr><th>Branch coverage:</th><td>92.8%</td></tr>
</tbody>
</table>
<h1>Metrics</h1>
<table class="overview table-fixed">
<thead><tr><th>Method</th><th>Cyclomatic complexity <a href="https://en.wikipedia.org/wiki/Cyclomatic_complexity" class="info"> </a></th><th>NPath complexity <a href="https://modess.io/npath-complexity-cyclomatic-complexity-explained" class="info"> </a></th><th>Sequence coverage <a href="https://en.wikipedia.org/wiki/Code_coverage" class="info"> </a></th><th>Branch coverage <a href="https://en.wikipedia.org/wiki/Code_coverage" class="info"> </a></th></tr></thead>
<tbody>
<tr><td title="System.Linq.Expressions.Expression System.Linq.Dynamic.Core.Parser.ExpressionPromoter::Promote(System.Linq.Expressions.Expression,System.Type,System.Boolean,System.Boolean)">Promote(...)</td><td>20</td><td>16384</td><td>94.12</td><td>93.10</td></tr>
</tbody>
</table>
<h1>File(s)</h1>
<h2 id="CUsersazureuserDocumentsGithubSystemLinqDynamicCoresrcSystemLinqDynamicCoreParserExpressionPromotercs">C:\Users\azureuser\Documents\Github\System.Linq.Dynamic.Core\src\System.Linq.Dynamic.Core\Parser\ExpressionPromoter.cs</h2>
<table class="lineAnalysis">
<thead><tr><th></th><th>#</th><th>Line</th><th></th><th>Line coverage</th></tr></thead>
<tbody>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line1"></a><code>1</code></td><td></td><td class="lightgray"><code>using System.Linq.Expressions;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line2"></a><code>2</code></td><td></td><td class="lightgray"><code>using System.Reflection;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line3"></a><code>3</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line4"></a><code>4</code></td><td></td><td class="lightgray"><code>namespace System.Linq.Dynamic.Core.Parser</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line5"></a><code>5</code></td><td></td><td class="lightgray"><code>{</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line6"></a><code>6</code></td><td></td><td class="lightgray"><code> internal static class ExpressionPromoter</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line7"></a><code>7</code></td><td></td><td class="lightgray"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line8"></a><code>8</code></td><td></td><td class="lightgray"><code> public static Expression Promote(Expression expr, Type type, bool exact, bool convertExpr)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '4097', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4097</td><td class="rightmargin right"><a id="file0_line9"></a><code>9</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '4097', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4097</td><td class="rightmargin right"><a id="file0_line10"></a><code>10</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (expr.Type == type)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '553', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">553</td><td class="rightmargin right"><a id="file0_line11"></a><code>11</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '553', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">553</td><td class="rightmargin right"><a id="file0_line12"></a><code>12</code></td><td></td><td class="lightgreen"><code> return expr;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line13"></a><code>13</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line14"></a><code>14</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '3544', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">3544</td><td class="rightmargin right"><a id="file0_line15"></a><code>15</code></td><td></td><td class="lightgreen"><code> var ce = expr as ConstantExpression;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line16"></a><code>16</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '3544', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">3544</td><td class="rightmargin right"><a id="file0_line17"></a><code>17</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (ce != null)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '846', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">846</td><td class="rightmargin right"><a id="file0_line18"></a><code>18</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '846', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">846</td><td class="rightmargin right"><a id="file0_line19"></a><code>19</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (ce == Constants.NullLiteral || ce.Value == null)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '59', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">59</td><td class="rightmargin right"><a id="file0_line20"></a><code>20</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="4 of 4 branches are covered" data-coverage="{'AllTestMethods': {'VC': '59', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">59</td><td class="rightmargin right"><a id="file0_line21"></a><code>21</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (!type.GetTypeInfo().IsValueType || TypeHelper.IsNullableType(type))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '37', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">37</td><td class="rightmargin right"><a id="file0_line22"></a><code>22</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '37', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">37</td><td class="rightmargin right"><a id="file0_line23"></a><code>23</code></td><td></td><td class="lightgreen"><code> return Expression.Constant(null, type);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line24"></a><code>24</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '22', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">22</td><td class="rightmargin right"><a id="file0_line25"></a><code>25</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line26"></a><code>26</code></td><td></td><td class="lightgray"><code> else</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '787', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">787</td><td class="rightmargin right"><a id="file0_line27"></a><code>27</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '787', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">787</td><td class="rightmargin right"><a id="file0_line28"></a><code>28</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (ConstantExpressionHelper.TryGetText(ce, out string text))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '714', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">714</td><td class="rightmargin right"><a id="file0_line29"></a><code>29</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '714', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">714</td><td class="rightmargin right"><a id="file0_line30"></a><code>30</code></td><td></td><td class="lightgreen"><code> Type target = TypeHelper.GetNonNullableType(type);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '714', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">714</td><td class="rightmargin right"><a id="file0_line31"></a><code>31</code></td><td></td><td class="lightgreen"><code> object value = null;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line32"></a><code>32</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line33"></a><code>33</code></td><td></td><td class="lightgray"><code>#if !(NETFX_CORE || WINDOWS_APP || DOTNET5_1 || UAP10_0 || NETSTANDARD)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line34"></a><code>34</code></td><td></td><td class="lightgray"><code> switch (Type.GetTypeCode(ce.Type))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line35"></a><code>35</code></td><td></td><td class="lightgray"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line36"></a><code>36</code></td><td></td><td class="lightgray"><code> case TypeCode.Int32:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line37"></a><code>37</code></td><td></td><td class="lightgray"><code> case TypeCode.UInt32:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line38"></a><code>38</code></td><td></td><td class="lightgray"><code> case TypeCode.Int64:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line39"></a><code>39</code></td><td></td><td class="lightgray"><code> case TypeCode.UInt64:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line40"></a><code>40</code></td><td></td><td class="lightgray"><code> value = TypeHelper.ParseNumber(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line41"></a><code>41</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line42"></a><code>42</code></td><td></td><td class="lightgray"><code> // Make sure an enum value stays an enum value</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line43"></a><code>43</code></td><td></td><td class="lightgray"><code> if (target.IsEnum)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line44"></a><code>44</code></td><td></td><td class="lightgray"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line45"></a><code>45</code></td><td></td><td class="lightgray"><code> value = Enum.ToObject(target, value);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line46"></a><code>46</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line47"></a><code>47</code></td><td></td><td class="lightgray"><code> break;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line48"></a><code>48</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line49"></a><code>49</code></td><td></td><td class="lightgray"><code> case TypeCode.Double:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line50"></a><code>50</code></td><td></td><td class="lightgray"><code> if (target == typeof(decimal)) value = TypeHelper.ParseNumber(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line51"></a><code>51</code></td><td></td><td class="lightgray"><code> break;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line52"></a><code>52</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line53"></a><code>53</code></td><td></td><td class="lightgray"><code> case TypeCode.String:</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line54"></a><code>54</code></td><td></td><td class="lightgray"><code> value = TypeHelper.ParseEnum(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line55"></a><code>55</code></td><td></td><td class="lightgray"><code> break;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line56"></a><code>56</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line57"></a><code>57</code></td><td></td><td class="lightgray"><code>#else</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '714', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">714</td><td class="rightmargin right"><a id="file0_line58"></a><code>58</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (ce.Type == typeof(Int32) || ce.Type == typeof(UInt32) || ce.Type == typeof(Int64) || ce.Type</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '703', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">703</td><td class="rightmargin right"><a id="file0_line59"></a><code>59</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '703', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">703</td><td class="rightmargin right"><a id="file0_line60"></a><code>60</code></td><td></td><td class="lightgreen"><code> value = TypeHelper.ParseNumber(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line61"></a><code>61</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line62"></a><code>62</code></td><td></td><td class="lightgray"><code> // Make sure an enum value stays an enum value</code></td></tr>
<tr title="1 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '703', 'LVS': 'orange'}}"><td class="orange"> </td><td class="leftmargin rightmargin right">703</td><td class="rightmargin right"><a id="file0_line63"></a><code>63</code></td><td class="branch50"> </td><td class="lightorange"><code> if (target.GetTypeInfo().IsEnum)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '0', 'LVS': 'red'}}"><td class="red"> </td><td class="leftmargin rightmargin right">0</td><td class="rightmargin right"><a id="file0_line64"></a><code>64</code></td><td></td><td class="lightred"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '0', 'LVS': 'red'}}"><td class="red"> </td><td class="leftmargin rightmargin right">0</td><td class="rightmargin right"><a id="file0_line65"></a><code>65</code></td><td></td><td class="lightred"><code> value = Enum.ToObject(target, value);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '0', 'LVS': 'red'}}"><td class="red"> </td><td class="leftmargin rightmargin right">0</td><td class="rightmargin right"><a id="file0_line66"></a><code>66</code></td><td></td><td class="lightred"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '703', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">703</td><td class="rightmargin right"><a id="file0_line67"></a><code>67</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '11', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">11</td><td class="rightmargin right"><a id="file0_line68"></a><code>68</code></td><td class="branch100"> </td><td class="lightgreen"><code> else if (ce.Type == typeof(Double))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '10', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">10</td><td class="rightmargin right"><a id="file0_line69"></a><code>69</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '10', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">10</td><td class="rightmargin right"><a id="file0_line70"></a><code>70</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (target == typeof(decimal))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '4', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4</td><td class="rightmargin right"><a id="file0_line71"></a><code>71</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '4', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4</td><td class="rightmargin right"><a id="file0_line72"></a><code>72</code></td><td></td><td class="lightgreen"><code> value = TypeHelper.ParseNumber(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '4', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4</td><td class="rightmargin right"><a id="file0_line73"></a><code>73</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '10', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">10</td><td class="rightmargin right"><a id="file0_line74"></a><code>74</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr title="1 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '1', 'LVS': 'orange'}}"><td class="orange"> </td><td class="leftmargin rightmargin right">1</td><td class="rightmargin right"><a id="file0_line75"></a><code>75</code></td><td class="branch50"> </td><td class="lightorange"><code> else if (ce.Type == typeof(String))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1</td><td class="rightmargin right"><a id="file0_line76"></a><code>76</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1</td><td class="rightmargin right"><a id="file0_line77"></a><code>77</code></td><td></td><td class="lightgreen"><code> value = TypeHelper.ParseEnum(text, target);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1</td><td class="rightmargin right"><a id="file0_line78"></a><code>78</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line79"></a><code>79</code></td><td></td><td class="lightgray"><code>#endif</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '714', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">714</td><td class="rightmargin right"><a id="file0_line80"></a><code>80</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (value != null)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '644', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">644</td><td class="rightmargin right"><a id="file0_line81"></a><code>81</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '644', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">644</td><td class="rightmargin right"><a id="file0_line82"></a><code>82</code></td><td></td><td class="lightgreen"><code> return Expression.Constant(value, type);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line83"></a><code>83</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '70', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">70</td><td class="rightmargin right"><a id="file0_line84"></a><code>84</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '143', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">143</td><td class="rightmargin right"><a id="file0_line85"></a><code>85</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '165', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">165</td><td class="rightmargin right"><a id="file0_line86"></a><code>86</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line87"></a><code>87</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '2863', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">2863</td><td class="rightmargin right"><a id="file0_line88"></a><code>88</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (TypeHelper.IsCompatibleWith(expr.Type, type))</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1160', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1160</td><td class="rightmargin right"><a id="file0_line89"></a><code>89</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr title="2 of 2 branches are covered" data-coverage="{'AllTestMethods': {'VC': '1160', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1160</td><td class="rightmargin right"><a id="file0_line90"></a><code>90</code></td><td class="branch100"> </td><td class="lightgreen"><code> if (type.GetTypeInfo().IsValueType || exact || expr.Type.GetTypeInfo().IsValueType && convertExpr)</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1114', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1114</td><td class="rightmargin right"><a id="file0_line91"></a><code>91</code></td><td></td><td class="lightgreen"><code> {</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1114', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1114</td><td class="rightmargin right"><a id="file0_line92"></a><code>92</code></td><td></td><td class="lightgreen"><code> return Expression.Convert(expr, type);</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line93"></a><code>93</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line94"></a><code>94</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '46', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">46</td><td class="rightmargin right"><a id="file0_line95"></a><code>95</code></td><td></td><td class="lightgreen"><code> return expr;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line96"></a><code>96</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line97"></a><code>97</code></td><td></td><td class="lightgray"><code></code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '1703', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">1703</td><td class="rightmargin right"><a id="file0_line98"></a><code>98</code></td><td></td><td class="lightgreen"><code> return null;</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '4097', 'LVS': 'green'}}"><td class="green"> </td><td class="leftmargin rightmargin right">4097</td><td class="rightmargin right"><a id="file0_line99"></a><code>99</code></td><td></td><td class="lightgreen"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line100"></a><code>100</code></td><td></td><td class="lightgray"><code> }</code></td></tr>
<tr data-coverage="{'AllTestMethods': {'VC': '', 'LVS': 'gray'}}"><td class="gray"> </td><td class="leftmargin rightmargin right"></td><td class="rightmargin right"><a id="file0_line101"></a><code>101</code></td><td></td><td class="lightgray"><code>}</code></td></tr>
</tbody>
</table>
<div class="footer">Generated by: ReportGenerator 2.5.6.0<br />2018-07-27 - 14:51:25<br /><a href="https://github.com/danielpalme/ReportGenerator">GitHub</a> | <a href="http://www.palmmedia.de">www.palmmedia.de</a></div></div>
<div class="containerright">
<div class="containerrightfixed">
<h1>Methods/Properties</h1>
<a class="method" href="#file0_line9" data-ng-click="navigateToHash('#file0_line9')" title="Promote(System.Linq.Expressions.Expression,System.Type,System.Boolean,System.Boolean)">Promote(System.Linq.Expressions.Expression,System.Type,System.Boolean,System.Boolean)</a><br />
<br/></div>
</div></div>
<script type="text/javascript" src="combined.js"></script>
</body></html>