aboutsummaryrefslogtreecommitdiff
path: root/src/wixext/Symbols/PerformanceCategorySymbol.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/wixext/Symbols/PerformanceCategorySymbol.cs')
-rw-r--r--src/wixext/Symbols/PerformanceCategorySymbol.cs71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/wixext/Symbols/PerformanceCategorySymbol.cs b/src/wixext/Symbols/PerformanceCategorySymbol.cs
new file mode 100644
index 00000000..5ecf388c
--- /dev/null
+++ b/src/wixext/Symbols/PerformanceCategorySymbol.cs
@@ -0,0 +1,71 @@
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.Util
4{
5 using WixToolset.Data;
6 using WixToolset.Util.Symbols;
7
8 public static partial class UtilSymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition PerformanceCategory = new IntermediateSymbolDefinition(
11 UtilSymbolDefinitionType.PerformanceCategory.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.ComponentRef), IntermediateFieldType.String),
15 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.Name), IntermediateFieldType.String),
16 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.IniData), IntermediateFieldType.String),
17 new IntermediateFieldDefinition(nameof(PerformanceCategorySymbolFields.ConstantData), IntermediateFieldType.String),
18 },
19 typeof(PerformanceCategorySymbol));
20 }
21}
22
23namespace WixToolset.Util.Symbols
24{
25 using WixToolset.Data;
26
27 public enum PerformanceCategorySymbolFields
28 {
29 ComponentRef,
30 Name,
31 IniData,
32 ConstantData,
33 }
34
35 public class PerformanceCategorySymbol : IntermediateSymbol
36 {
37 public PerformanceCategorySymbol() : base(UtilSymbolDefinitions.PerformanceCategory, null, null)
38 {
39 }
40
41 public PerformanceCategorySymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(UtilSymbolDefinitions.PerformanceCategory, sourceLineNumber, id)
42 {
43 }
44
45 public IntermediateField this[PerformanceCategorySymbolFields index] => this.Fields[(int)index];
46
47 public string ComponentRef
48 {
49 get => this.Fields[(int)PerformanceCategorySymbolFields.ComponentRef].AsString();
50 set => this.Set((int)PerformanceCategorySymbolFields.ComponentRef, value);
51 }
52
53 public string Name
54 {
55 get => this.Fields[(int)PerformanceCategorySymbolFields.Name].AsString();
56 set => this.Set((int)PerformanceCategorySymbolFields.Name, value);
57 }
58
59 public string IniData
60 {
61 get => this.Fields[(int)PerformanceCategorySymbolFields.IniData].AsString();
62 set => this.Set((int)PerformanceCategorySymbolFields.IniData, value);
63 }
64
65 public string ConstantData
66 {
67 get => this.Fields[(int)PerformanceCategorySymbolFields.ConstantData].AsString();
68 set => this.Set((int)PerformanceCategorySymbolFields.ConstantData, value);
69 }
70 }
71} \ No newline at end of file