using System; using NodePipeline.Abstractions.Validators; // ReSharper disable UnusedAutoPropertyAccessor.Global namespace NodePipeline.Abstractions.Attributes.Validation.NodeField; /// /// Associated with /// [AttributeUsage(AttributeTargets.Property)] public sealed class HasLengthBetweenAttribute : Attribute { /// /// Associated with /// /// String min length non-inclusive /// String max length non-inclusive public HasLengthBetweenAttribute(int min, int max) { Min = min; Max = max; } public int? Min { get; } public int? Max { get; } } /// /// Associated with /// [AttributeUsage(AttributeTargets.Property)] public sealed class HasMinLengthAttribute : Attribute { /// /// Associated with /// /// String min length non-inclusive public HasMinLengthAttribute(int value) { Value = value; } public int Value { get; } } /// /// Associated with /// [AttributeUsage(AttributeTargets.Property)] public sealed class HasMaxLengthAttribute : Attribute { /// /// Associated with /// /// String max length non-inclusive public HasMaxLengthAttribute(int value) { Value = value; } public int Value { get; } }