add fromChar (#20332)

`fromChar` converts `char` to `SomeInteger`, related to `isDigit`
This commit is contained in:
Hamid Bluri 2022-09-11 22:20:06 +04:30 • committed by GitHub
commit 846cc746a2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -997,6 +997,15 @@ func toOctal*(c: char): string {.rtl, extern: "nsuToOctal".} =
result[i] = chr(val mod 8 + ord('0'))
val = val div 8
func fromChar[T: SomeInteger](ch: char): T =
runnableExamples:
assert fromChar[int8]('6') == 6
doAssertRaises AssertionDefect:
fromChar[int8]('a')
assert isDigit(ch)
T(ord(ch) - ord('0'))
func fromBin*[T: SomeInteger](s: string): T =
## Parses a binary integer value from a string `s`.
##