Custom data type for representing basketball player numbers with additional validation rules.
init?(number: String)
- initializes correctly with a positive number comprised of one or two digits.
Allowed numbers: 00, 01...09, 0...99.
You can use init?(number: String, validationRules: Set<JerseyNumberValidationRule>)
to restrict valid numbers.
.only0to5
- returns nil
if number
contains digits in range of 6...9
in any place
.doubleZeroNotAllowed
- returns nil
if number
is "00"
.noLeadingZeros
- returns nil
for values like 01...09
copy(usingValidationRules rules: Set<JerseyNumberValidationRule>) -> BasketballJerseyNumber?
- makes a copy by following all provided rules.
follows(rules: Set<JerseyNumberValidationRule>) -> Bool
- verifies the number against a set of provided rules.
Conforms to Hashable
and CustomStringConvertible
.