From 337124bed6a57b40fca11c5c2f5b554f570522a6 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Tue, 4 May 2021 11:41:55 -0700 Subject: Move ComPlus.wixext into ext --- .../Symbols/ComPlusRoleForInterfaceSymbol.cs | 63 ++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/ext/ComPlus/wixext/Symbols/ComPlusRoleForInterfaceSymbol.cs (limited to 'src/ext/ComPlus/wixext/Symbols/ComPlusRoleForInterfaceSymbol.cs') diff --git a/src/ext/ComPlus/wixext/Symbols/ComPlusRoleForInterfaceSymbol.cs b/src/ext/ComPlus/wixext/Symbols/ComPlusRoleForInterfaceSymbol.cs new file mode 100644 index 00000000..b77bd215 --- /dev/null +++ b/src/ext/ComPlus/wixext/Symbols/ComPlusRoleForInterfaceSymbol.cs @@ -0,0 +1,63 @@ +// 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. + +namespace WixToolset.ComPlus +{ + using WixToolset.Data; + using WixToolset.ComPlus.Symbols; + + public static partial class ComPlusSymbolDefinitions + { + public static readonly IntermediateSymbolDefinition ComPlusRoleForInterface = new IntermediateSymbolDefinition( + ComPlusSymbolDefinitionType.ComPlusRoleForInterface.ToString(), + new[] + { + new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceSymbolFields.InterfaceRef), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceSymbolFields.ApplicationRoleRef), IntermediateFieldType.String), + new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceSymbolFields.ComponentRef), IntermediateFieldType.String), + }, + typeof(ComPlusRoleForInterfaceSymbol)); + } +} + +namespace WixToolset.ComPlus.Symbols +{ + using WixToolset.Data; + + public enum ComPlusRoleForInterfaceSymbolFields + { + InterfaceRef, + ApplicationRoleRef, + ComponentRef, + } + + public class ComPlusRoleForInterfaceSymbol : IntermediateSymbol + { + public ComPlusRoleForInterfaceSymbol() : base(ComPlusSymbolDefinitions.ComPlusRoleForInterface, null, null) + { + } + + public ComPlusRoleForInterfaceSymbol(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusSymbolDefinitions.ComPlusRoleForInterface, sourceLineNumber, id) + { + } + + public IntermediateField this[ComPlusRoleForInterfaceSymbolFields index] => this.Fields[(int)index]; + + public string InterfaceRef + { + get => this.Fields[(int)ComPlusRoleForInterfaceSymbolFields.InterfaceRef].AsString(); + set => this.Set((int)ComPlusRoleForInterfaceSymbolFields.InterfaceRef, value); + } + + public string ApplicationRoleRef + { + get => this.Fields[(int)ComPlusRoleForInterfaceSymbolFields.ApplicationRoleRef].AsString(); + set => this.Set((int)ComPlusRoleForInterfaceSymbolFields.ApplicationRoleRef, value); + } + + public string ComponentRef + { + get => this.Fields[(int)ComPlusRoleForInterfaceSymbolFields.ComponentRef].AsString(); + set => this.Set((int)ComPlusRoleForInterfaceSymbolFields.ComponentRef, value); + } + } +} \ No newline at end of file -- cgit v1.2.3-55-g6feb