tendermint/common/string.go

45 lines
728 B
Go
Raw Normal View History

2015-10-21 12:15:19 -07:00
package common
import (
2017-06-05 12:50:11 -07:00
"encoding/hex"
2015-10-21 12:15:19 -07:00
"fmt"
"strings"
)
var Fmt = fmt.Sprintf
func RightPadString(s string, totalLength int) string {
remaining := totalLength - len(s)
if remaining > 0 {
s = s + strings.Repeat(" ", remaining)
}
return s
}
func LeftPadString(s string, totalLength int) string {
remaining := totalLength - len(s)
if remaining > 0 {
s = strings.Repeat(" ", remaining) + s
}
return s
}
2017-06-05 12:50:11 -07:00
// Returns true for non-empty hex-string prefixed with "0x"
func IsHex(s string) bool {
if len(s) > 2 && s[:2] == "0x" {
_, err := hex.DecodeString(s[2:])
if err != nil {
return false
}
return true
}
return false
}
func StripHex(s string) string {
if IsHex(s) {
return s[2:]
}
return s
}