1
0
mirror of https://github.com/golang/go synced 2024-11-25 00:17:58 -07:00

strconv: consistent parameter names for ParseUint

If ParseUint is like ParseInt it should have the same parameter
names, thus rename b to to base as in ParseInt's documentation.

R=golang-dev, bradfitz
CC=golang-dev
https://golang.org/cl/6453152
This commit is contained in:
Volker Dobler 2012-08-20 22:30:04 +10:00 committed by Brad Fitzpatrick
parent 20f6a8fdaf
commit db645a024d

View File

@ -44,7 +44,7 @@ func cutoff64(base int) uint64 {
} }
// ParseUint is like ParseInt but for unsigned numbers. // ParseUint is like ParseInt but for unsigned numbers.
func ParseUint(s string, b int, bitSize int) (n uint64, err error) { func ParseUint(s string, base int, bitSize int) (n uint64, err error) {
var cutoff, maxVal uint64 var cutoff, maxVal uint64
if bitSize == 0 { if bitSize == 0 {
@ -57,32 +57,32 @@ func ParseUint(s string, b int, bitSize int) (n uint64, err error) {
err = ErrSyntax err = ErrSyntax
goto Error goto Error
case 2 <= b && b <= 36: case 2 <= base && base <= 36:
// valid base; nothing to do // valid base; nothing to do
case b == 0: case base == 0:
// Look for octal, hex prefix. // Look for octal, hex prefix.
switch { switch {
case s[0] == '0' && len(s) > 1 && (s[1] == 'x' || s[1] == 'X'): case s[0] == '0' && len(s) > 1 && (s[1] == 'x' || s[1] == 'X'):
b = 16 base = 16
s = s[2:] s = s[2:]
if len(s) < 1 { if len(s) < 1 {
err = ErrSyntax err = ErrSyntax
goto Error goto Error
} }
case s[0] == '0': case s[0] == '0':
b = 8 base = 8
default: default:
b = 10 base = 10
} }
default: default:
err = errors.New("invalid base " + Itoa(b)) err = errors.New("invalid base " + Itoa(base))
goto Error goto Error
} }
n = 0 n = 0
cutoff = cutoff64(b) cutoff = cutoff64(base)
maxVal = 1<<uint(bitSize) - 1 maxVal = 1<<uint(bitSize) - 1
for i := 0; i < len(s); i++ { for i := 0; i < len(s); i++ {
@ -100,19 +100,19 @@ func ParseUint(s string, b int, bitSize int) (n uint64, err error) {
err = ErrSyntax err = ErrSyntax
goto Error goto Error
} }
if int(v) >= b { if int(v) >= base {
n = 0 n = 0
err = ErrSyntax err = ErrSyntax
goto Error goto Error
} }
if n >= cutoff { if n >= cutoff {
// n*b overflows // n*base overflows
n = 1<<64 - 1 n = 1<<64 - 1
err = ErrRange err = ErrRange
goto Error goto Error
} }
n *= uint64(b) n *= uint64(base)
n1 := n + uint64(v) n1 := n + uint64(v)
if n1 < n || n1 > maxVal { if n1 < n || n1 > maxVal {