mirror of
https://github.com/fluencelabs/tendermint
synced 2025-06-29 12:41:44 +00:00
Added some common methods
This commit is contained in:
@ -1,7 +1,25 @@
|
|||||||
package common
|
package common
|
||||||
|
|
||||||
func Fingerprint(bytez []byte) []byte {
|
func Fingerprint(slice []byte) []byte {
|
||||||
fingerprint := make([]byte, 6)
|
fingerprint := make([]byte, 6)
|
||||||
copy(fingerprint, bytez)
|
copy(fingerprint, slice)
|
||||||
return fingerprint
|
return fingerprint
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func RightPadBytes(slice []byte, l int) []byte {
|
||||||
|
if l < len(slice) {
|
||||||
|
return slice
|
||||||
|
}
|
||||||
|
padded := make([]byte, l)
|
||||||
|
copy(padded[0:len(slice)], slice)
|
||||||
|
return padded
|
||||||
|
}
|
||||||
|
|
||||||
|
func LeftPadBytes(slice []byte, l int) []byte {
|
||||||
|
if l < len(slice) {
|
||||||
|
return slice
|
||||||
|
}
|
||||||
|
padded := make([]byte, l)
|
||||||
|
copy(padded[l-len(slice):], slice)
|
||||||
|
return padded
|
||||||
|
}
|
||||||
|
@ -42,6 +42,20 @@ func MaxUint32(a, b uint32) uint32 {
|
|||||||
return b
|
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 {
|
func MaxInt(a, b int) int {
|
||||||
if a > b {
|
if a > b {
|
||||||
return a
|
return a
|
||||||
@ -100,6 +114,20 @@ func MinUint32(a, b uint32) uint32 {
|
|||||||
return b
|
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 {
|
func MinInt(a, b int) int {
|
||||||
if a < b {
|
if a < b {
|
||||||
return a
|
return a
|
||||||
@ -113,3 +141,17 @@ func MinUint(a, b uint) uint {
|
|||||||
}
|
}
|
||||||
return b
|
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
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user