// // ExecutableResourceIdentifier.cs // // Author: // beckermj <> // // Copyright (c) 2023 ${CopyrightHolder} // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . using System; namespace UniversalEditor.ObjectModels.Executable { public struct ExecutableResourceIdentifier { public string Name { get; } public int Ordinal { get; } public ExecutableResourceIdentifierType IdentifierType { get; } public ExecutableResourceIdentifier(string name) { Name = name; Ordinal = 0; IdentifierType = ExecutableResourceIdentifierType.String; } public ExecutableResourceIdentifier(int ordinal) { Name = null; Ordinal = ordinal; IdentifierType = ExecutableResourceIdentifierType.Ordinal; } public override string ToString() { if (IdentifierType == ExecutableResourceIdentifierType.Ordinal) { return String.Format("#{0}", Ordinal); } return Name; } } }