diff options
Diffstat (limited to 'src/WixToolset.Data/IntermediateFieldExtensions.cs')
| -rw-r--r-- | src/WixToolset.Data/IntermediateFieldExtensions.cs | 48 |
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) |
