// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tools.DotNETCommon.Perforce { /// /// Attributes for fields that should be deserialized from P4 tags /// [AttributeUsage(AttributeTargets.Field)] public class PerforceTagAttribute : Attribute { /// /// The tag name /// public string Name; /// /// Whether this tag is required for a valid record /// public bool Optional = false; /// /// Constructor /// /// Name of the tag public PerforceTagAttribute(string Name) { this.Name = Name; } } /// /// Specifies the name of an enum when converted into a P4 string /// [AttributeUsage(AttributeTargets.Field)] public class PerforceEnumAttribute : Attribute { /// /// Name of the enum value /// public string Name; /// /// Constructor /// /// Name of the serialized value public PerforceEnumAttribute(string Name) { this.Name = Name; } } /// /// When attached to a list field, indicates that a list of structures can be included in the record /// [AttributeUsage(AttributeTargets.Field)] public class PerforceRecordListAttribute : Attribute { } }