summaryrefslogtreecommitdiff
path: root/src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs')
-rw-r--r--src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs b/src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs
new file mode 100644
index 00000000..e42feae2
--- /dev/null
+++ b/src/ext/ComPlus/wixext/Symbols/ComPlusPartitionPropertySymbol.cs
@@ -0,0 +1,63 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolset.ComPlus
4{
5 using WixToolset.Data;
6 using WixToolset.ComPlus.Symbols;
7
8 public static partial class ComPlusSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition ComPlusPartitionProperty = new IntermediateSymbolDefinition(
11 ComPlusSymbolDefinitionType.ComPlusPartitionProperty.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertySymbolFields.PartitionRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertySymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertySymbolFields.Value), IntermediateFieldType.String),
17 },
18 typeof(ComPlusPartitionPropertySymbol));
19 }
20}
21
22namespace WixToolset.ComPlus.Symbols
23{
24 using WixToolset.Data;
25
26 public enum ComPlusPartitionPropertySymbolFields
27 {
28 PartitionRef,
29 Name,
30 Value,
31 }
32
33 public class ComPlusPartitionPropertySymbol : IntermediateSymbol
34 {
35 public ComPlusPartitionPropertySymbol() : base(ComPlusSymbolDefinitions.ComPlusPartitionProperty, null, null)
36 {
37 }
38
39 public ComPlusPartitionPropertySymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusSymbolDefinitions.ComPlusPartitionProperty, sourceLineNumber, id)
40 {
41 }
42
43 public IntermediateField this[ComPlusPartitionPropertySymbolFields index] => this.Fields[(int)index];
44
45 public string PartitionRef
46 {
47 get => this.Fields[(int)ComPlusPartitionPropertySymbolFields.PartitionRef].AsString();
48 set => this.Set((int)ComPlusPartitionPropertySymbolFields.PartitionRef, value);
49 }
50
51 public string Name
52 {
53 get => this.Fields[(int)ComPlusPartitionPropertySymbolFields.Name].AsString();
54 set => this.Set((int)ComPlusPartitionPropertySymbolFields.Name, value);
55 }
56
57 public string Value
58 {
59 get => this.Fields[(int)ComPlusPartitionPropertySymbolFields.Value].AsString();
60 set => this.Set((int)ComPlusPartitionPropertySymbolFields.Value, value);
61 }
62 }
63} \ No newline at end of file