Rename isNilOrWhitespace to isEmptyOrWhitespace and make it use allCharsInSet (#13258)

* Rename isNilOrWhitespace to isEmptyOrWhitespace

* Make isEmptyOrWhitespace use allCharsInSet(Whitespace)
This commit is contained in:
hlaaftana 2020-01-26 16:02:07 +03:00 • committed by Andreas Rumpf
commit e7744b0909

View file

@ -2849,13 +2849,16 @@ iterator tokenize*(s: string, seps: set[char] = Whitespace): tuple[
break break
i = j i = j
proc isEmptyOrWhitespace*(s: string): bool {.noSideEffect, procvar, rtl,
extern: "nsuIsEmptyOrWhitespace".} =
## Checks if `s` is empty or consists entirely of whitespace characters.
result = s.allCharsInSet(Whitespace)
proc isNilOrWhitespace*(s: string): bool {.noSideEffect, procvar, rtl, proc isNilOrWhitespace*(s: string): bool {.noSideEffect, procvar, rtl,
extern: "nsuIsNilOrWhitespace".} = extern: "nsuIsNilOrWhitespace",
## Checks if `s` is nil or consists entirely of whitespace characters. deprecated: "use isEmptyOrWhitespace instead".} =
result = true ## Alias for isEmptyOrWhitespace
for c in s: result = isEmptyOrWhitespace(s)
if not c.isSpaceAscii():
return false
when isMainModule: when isMainModule:
proc nonStaticTests = proc nonStaticTests =
@ -2981,10 +2984,10 @@ when isMainModule:
doAssert isSpaceAscii('\l') doAssert isSpaceAscii('\l')
doAssert(not isSpaceAscii('A')) doAssert(not isSpaceAscii('A'))
doAssert(isNilOrWhitespace("")) doAssert(isEmptyOrWhitespace(""))
doAssert(isNilOrWhitespace(" ")) doAssert(isEmptyOrWhitespace(" "))
doAssert(isNilOrWhitespace("\t\l \v\r\f")) doAssert(isEmptyOrWhitespace("\t\l \v\r\f"))
doAssert(not isNilOrWhitespace("ABc \td")) doAssert(not isEmptyOrWhitespace("ABc \td"))
doAssert isLowerAscii('a') doAssert isLowerAscii('a')
doAssert isLowerAscii('z') doAssert isLowerAscii('z')