--- a/Character.st Fri Jul 19 21:32:37 2019 +0200
+++ b/Character.st Sun Jul 21 07:54:48 2019 +0200
@@ -1457,25 +1457,31 @@
!
digitValue
- "return my digitValue for any base (up to 37)"
+ "return my digitValue for any base (up to 37).
+ Notice: in case of an invalid character,
+ ST/X is not X3J20 conform:
+ ST/X raises an error,
+ X3J20 returns -1"
|code "{ Class: SmallInteger }" |
code := asciivalue.
(code between:($0 codePoint) and:($9 codePoint)) ifTrue:[
- ^ code - $0 codePoint
+ ^ code - $0 codePoint
].
(code between:($a codePoint) and:($z codePoint)) ifTrue:[
- ^ code + (10 - $a codePoint)
+ ^ code + (10 - $a codePoint)
].
(code between:($A codePoint) and:($Z codePoint)) ifTrue:[
- ^ code + (10 - $A codePoint)
+ ^ code + (10 - $A codePoint)
].
"remove error below for X3J20 conformance ... "
self error:'bad character'.
" "
^ -1
+
+ "Modified (comment): / 21-07-2019 / 07:54:30 / Claus Gittinger"
!
digitValueRadix:base