DBStoneValidators

@interface DBStoneValidators <T> : NSObject

Validator functions used by SDK to impose value constraints.

  • Validator for NSString objects. Enforces minimum length and/or maximum length and/or regex pattern.

    Declaration

    Objective-C

    + (void (^_Nonnull)(NSString *_Nonnull))
    stringValidator:(nullable NSNumber *)minLength
          maxLength:(nullable NSNumber *)maxLength
            pattern:(nullable NSString *)pattern;

    Swift

    class func stringValidator(_ minLength: NSNumber?, maxLength: NSNumber?, pattern: String?) -> (String) -> Void
  • Validator for NSNumber objects. Enforces minimum value and/or maximum value.

    Declaration

    Objective-C

    + (void (^_Nonnull)(NSNumber *_Nonnull))
    numericValidator:(nullable NSNumber *)minValue
            maxValue:(nullable NSNumber *)maxValue;

    Swift

    class func numericValidator(_ minValue: NSNumber?, maxValue: NSNumber?) -> (NSNumber) -> Void
  • Validator for NSArray objects. Enforces minimum number of items and/or maximum minimum number of items. Method requires a validator block that can validate each item in the array.

    Declaration

    Objective-C

    + (void (^_Nonnull)(NSArray<T> *_Nonnull))
    arrayValidator:(nullable NSNumber *)minItems
          maxItems:(nullable NSNumber *)maxItems
     itemValidator:(void (^_Nullable)(T _Nonnull))itemValidator;

    Swift

    class func arrayValidator(_ minItems: NSNumber?, maxItems: NSNumber?, itemValidator: ((T) -> Void)? = nil) -> ([T]) -> Void
  • Validator for NSDictionary objects. Enforces minimum number of items and/or maximum minimum number of items. Method requires a validator block that can validate each item in the array.

    Declaration

    Objective-C

    + (void (^_Nonnull)(NSDictionary<NSString *, T> *_Nonnull))mapValidator:
        (void (^_Nullable)(T _Nonnull))itemValidator;

    Swift

    class func mapValidator(_ itemValidator: ((T) -> Void)? = nil) -> ([String : T]) -> Void
  • Wrapper validator for nullable objects. Maintains a reference to the object’s normal non-nullable validator.

    Declaration

    Objective-C

    + (void (^_Nonnull)(T _Nonnull))nullableValidator:
        (void (^_Nonnull)(T _Nonnull))internalValidator;

    Swift

    class func nullableValidator(_ internalValidator: @escaping (T) -> Void) -> (T) -> Void