mirror of https://github.com/tidwall/tile38.git
22 lines
377 B
Go
22 lines
377 B
Go
package controller
|
|
|
|
import (
|
|
"encoding/json"
|
|
|
|
"github.com/tidwall/cast"
|
|
)
|
|
|
|
func jsonString(s string) string {
|
|
for i := 0; i < len(s); i++ {
|
|
if s[i] < ' ' || s[i] == '\\' || s[i] == '"' || s[i] > 126 {
|
|
d, _ := json.Marshal(s)
|
|
return string(d)
|
|
}
|
|
}
|
|
b := make([]byte, len(s)+2)
|
|
b[0] = '"'
|
|
copy(b[1:], cast.ToBytes(s))
|
|
b[len(b)-1] = '"'
|
|
return cast.ToString(b)
|
|
}
|