Added some common methods

This commit is contained in:
Jae Kwon
2015-03-16 02:23:35 -07:00
parent 4314607699
commit 722474a9b3
2 changed files with 62 additions and 2 deletions

View File

@ -42,6 +42,20 @@ func MaxUint32(a, b uint32) uint32 {
return b
}
func MaxInt64(a, b int64) int64 {
if a > b {
return a
}
return b
}
func MaxUint64(a, b uint64) uint64 {
if a > b {
return a
}
return b
}
func MaxInt(a, b int) int {
if a > b {
return a
@ -100,6 +114,20 @@ func MinUint32(a, b uint32) uint32 {
return b
}
func MinInt64(a, b int64) int64 {
if a < b {
return a
}
return b
}
func MinUint64(a, b uint64) uint64 {
if a < b {
return a
}
return b
}
func MinInt(a, b int) int {
if a < b {
return a
@ -113,3 +141,17 @@ func MinUint(a, b uint) uint {
}
return b
}
//-----------------------------------------------------------------------------
func ExpUint64(a, b uint64) uint64 {
accum := uint64(1)
for b > 0 {
if b&1 == 1 {
accum *= a
}
a *= a
b >>= 1
}
return accum
}