main
cs 47 lines 1.7 KB
Raw
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
3 namespace ForTestingUseOnly
4 {
5 using WixToolset.Data;
6 using ForTestingUseOnly.Symbols;
7
8 public static partial class ForTestingUseOnlySymbolDefinitions
9 {
10 public static readonly IntermediateSymbolDefinition ForTestingUseOnlyBundle = new IntermediateSymbolDefinition(
11 ForTestingUseOnlySymbolDefinitionType.ForTestingUseOnlyBundle.ToString(),
12 new[]
13 {
14 new IntermediateFieldDefinition(nameof(ForTestingUseOnlyBundleSymbolFields.BundleId), IntermediateFieldType.String),
15 },
16 typeof(ForTestingUseOnlyBundleSymbol));
17 }
18 }
19
20 namespace ForTestingUseOnly.Symbols
21 {
22 using WixToolset.Data;
23
24 public enum ForTestingUseOnlyBundleSymbolFields
25 {
26 BundleId,
27 }
28
29 public class ForTestingUseOnlyBundleSymbol : IntermediateSymbol
30 {
31 public ForTestingUseOnlyBundleSymbol() : base(ForTestingUseOnlySymbolDefinitions.ForTestingUseOnlyBundle, null, null)
32 {
33 }
34
35 public ForTestingUseOnlyBundleSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ForTestingUseOnlySymbolDefinitions.ForTestingUseOnlyBundle, sourceLineNumber, id)
36 {
37 }
38
39 public IntermediateField this[ForTestingUseOnlyBundleSymbolFields index] => this.Fields[(int)index];
40
41 public string BundleId
42 {
43 get => this.Fields[(int)ForTestingUseOnlyBundleSymbolFields.BundleId].AsString();
44 set => this.Set((int)ForTestingUseOnlyBundleSymbolFields.BundleId, value);
45 }
46 }
47 }