// ⚡️ Fiber is an Express inspired web framework written in Go with ☕️ // 🤖 Github Repository: https://github.com/gofiber/fiber // 📌 API Documentation: https://docs.gofiber.io package utils // ToLower converts ascii string to lower-case func ToLower(b string) string { res := make([]byte, len(b)) copy(res, b) for i := 0; i < len(res); i++ { res[i] = toLowerTable[res[i]] } return UnsafeString(res) } // ToUpper converts ascii string to upper-case func ToUpper(b string) string { res := make([]byte, len(b)) copy(res, b) for i := 0; i < len(res); i++ { res[i] = toUpperTable[res[i]] } return UnsafeString(res) } // TrimLeft is the equivalent of strings.TrimLeft func TrimLeft(s string, cutset byte) string { lenStr, start := len(s), 0 for start < lenStr && s[start] == cutset { start++ } return s[start:] } // Trim is the equivalent of strings.Trim func Trim(s string, cutset byte) string { i, j := 0, len(s)-1 for ; i <= j; i++ { if s[i] != cutset { break } } for ; i < j; j-- { if s[j] != cutset { break } } return s[i : j+1] } // TrimRight is the equivalent of strings.TrimRight func TrimRight(s string, cutset byte) string { lenStr := len(s) for lenStr > 0 && s[lenStr-1] == cutset { lenStr-- } return s[:lenStr] } // EqualFold tests ascii strings for equality case-insensitively func EqualFold(b, s string) bool { if len(b) != len(s) { return false } for i := len(b) - 1; i >= 0; i-- { if toUpperTable[b[i]] != toUpperTable[s[i]] { return false } } return true }