From 944c2c74c0756e6b768757475546da459d06e95e Mon Sep 17 00:00:00 2001 From: Kevin Chabowski Date: Tue, 6 Aug 2013 14:14:10 +0200 Subject: Initial commit. --- strings.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 strings.go (limited to 'strings.go') diff --git a/strings.go b/strings.go new file mode 100644 index 0000000..555f5dd --- /dev/null +++ b/strings.go @@ -0,0 +1,35 @@ +package kagus + +import ( + "strings" + "unicode" +) + +// StringConsistsOf tests, if f returns true for all runes in s +func StringConsistsOf(s string, f func(rune) bool) bool { + for _, r := range s { + if !f(r) { + return false + } + } + return true +} + +// IsASCII tests, if a Rune is in the ASCII set +func IsASCII(r rune) bool { + return (r <= unicode.MaxASCII) +} + +// Indent a string s by prefixing each line with ind. +func Indent(s string, ind string) (rv string) { + ls := strings.Split(s, "\n") + first := true + for _, l := range ls { + if !first { + rv += "\n" + } + rv += ind + l + first = false + } + return +} -- cgit v1.2.3-54-g00ecf