aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Data/IntermediateFieldExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Data/IntermediateFieldExtensions.cs')
-rw-r--r--src/WixToolset.Data/IntermediateFieldExtensions.cs48
1 files changed, 3 insertions, 45 deletions
diff --git a/src/WixToolset.Data/IntermediateFieldExtensions.cs b/src/WixToolset.Data/IntermediateFieldExtensions.cs
index 2c856e65..c70eb230 100644
--- a/src/WixToolset.Data/IntermediateFieldExtensions.cs
+++ b/src/WixToolset.Data/IntermediateFieldExtensions.cs
@@ -45,21 +45,7 @@ namespace WixToolset.Data
45 return null; 45 return null;
46 } 46 }
47 47
48 switch (field.Definition.Type) 48 return field.AsBool();
49 {
50 case IntermediateFieldType.Bool:
51 return field.Value.AsBool();
52
53 case IntermediateFieldType.LargeNumber:
54 case IntermediateFieldType.Number:
55 return field.Value.AsLargeNumber() != 0;
56
57 case IntermediateFieldType.String:
58 return !String.IsNullOrEmpty(field.Value.AsString());
59
60 default:
61 throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to boolean");
62 }
63 } 49 }
64 50
65 public static long AsLargeNumber(this IntermediateField field) 51 public static long AsLargeNumber(this IntermediateField field)
@@ -93,21 +79,7 @@ namespace WixToolset.Data
93 return null; 79 return null;
94 } 80 }
95 81
96 switch (field.Definition.Type) 82 return field.AsLargeNumber();
97 {
98 case IntermediateFieldType.Bool:
99 return field.Value.AsBool() ? 1 : 0;
100
101 case IntermediateFieldType.LargeNumber:
102 case IntermediateFieldType.Number:
103 return field.Value.AsLargeNumber();
104
105 case IntermediateFieldType.String:
106 return Convert.ToInt64(field.Value.AsString());
107
108 default:
109 throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to large number");
110 }
111 } 83 }
112 84
113 public static int AsNumber(this IntermediateField field) 85 public static int AsNumber(this IntermediateField field)
@@ -141,21 +113,7 @@ namespace WixToolset.Data
141 return null; 113 return null;
142 } 114 }
143 115
144 switch (field.Definition.Type) 116 return field.AsNumber();
145 {
146 case IntermediateFieldType.Bool:
147 return field.Value.AsBool() ? 1 : 0;
148
149 case IntermediateFieldType.LargeNumber:
150 case IntermediateFieldType.Number:
151 return field.Value.AsNumber();
152
153 case IntermediateFieldType.String:
154 return Convert.ToInt32(field.Value.AsString());
155
156 default:
157 throw new InvalidCastException($"Cannot convert field {field.Name} with type {field.Type} to number");
158 }
159 } 117 }
160 118
161 public static IntermediateFieldPathValue AsPath(this IntermediateField field) 119 public static IntermediateFieldPathValue AsPath(this IntermediateField field)