isValid method

  1. @override
bool isValid(
  1. String instance
)
override

Tells whether the instance is valid.

Implementation

@override
bool isValid(String instance) {
  final maxLines = this.maxLines;
  if (maxLines != null) {
    var n = maxLines;
    if (n < 1) {
      return false;
    }
    for (var i = 0; i < instance.length; i++) {
      if (instance.codeUnitAt(i) == 10) {
        n--;
        if (n < 1) {
          return false;
        }
      }
    }
  }
  final lengthInUtf16 = this.lengthInUtf16;
  if (lengthInUtf16 != null && !lengthInUtf16.isValid(instance.length)) {
    return false;
  }
  final lengthInUtf8 = this.lengthInUtf8;
  if (lengthInUtf8 != null &&
      !lengthInUtf8.isValid(utf8.encode(instance).length)) {
    return false;
  }
  final regExp = this.regExp;
  if (regExp != null && !regExp.hasMatch(instance)) {
    return false;
  }
  return super.isValid(instance);
}