Skip to content

Commit 417d09c

Browse files
committed
feat: uintptr is also an unsigned integer.
1 parent 7e49a65 commit 417d09c

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

util.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,8 @@ func isEqual(x, y any) bool {
4040
switch v1.Kind() {
4141
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
4242
return v1.Int() == v2.Int()
43-
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
43+
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64,
44+
reflect.Uintptr:
4445
return v1.Uint() == v2.Uint()
4546
case reflect.Float32, reflect.Float64:
4647
return v1.Float() == v2.Float()
@@ -75,8 +76,9 @@ func isSameType(t1, t2 reflect.Type) bool {
7576
switch t1.Kind() {
7677
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
7778
return kind >= reflect.Int && kind <= reflect.Int64
78-
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64:
79-
return kind >= reflect.Uint && kind <= reflect.Uint64
79+
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64,
80+
reflect.Uintptr:
81+
return kind >= reflect.Uint && kind <= reflect.Uintptr
8082
case reflect.Float32, reflect.Float64:
8183
return kind == reflect.Float32 || kind == reflect.Float64
8284
case reflect.Complex64, reflect.Complex128:

util_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ func TestIsEqual(t *testing.T) {
4545
assert.Equal(isEqual(uint(1), uint(2)), false)
4646
assert.Equal(isEqual(uint(1), uint64(1)), true)
4747
assert.Equal(isEqual(uint(1), uint64(2)), false)
48+
assert.Equal(isEqual(uint(1), uintptr(1)), true)
4849
assert.Equal(isEqual(1.0, 1.0), true)
4950
assert.Equal(isEqual(1.0, 2.0), false)
5051
assert.Equal(isEqual(1.0, float32(1.0)), true)

0 commit comments

Comments
 (0)