in wfn/uri.go [279:346]
func pctEncode(b byte) []byte {
switch b {
case '!':
return []byte("%21")
case '"':
return []byte("%22")
case '#':
return []byte("%23")
case '$':
return []byte("%24")
case '%':
return []byte("%25")
case '&':
return []byte("%26")
case '\'':
return []byte("%27")
case '(':
return []byte("%28")
case ')':
return []byte("%29")
case '*':
return []byte("%2a")
case '+':
return []byte("%2b")
case ',':
return []byte("%2c")
case '-':
return []byte("-") // bound without encoding
case '.':
return []byte(".") // bound without encoding
case '/':
return []byte("%2f")
case ':':
return []byte("%3a")
case ';':
return []byte("%3b")
case '<':
return []byte("%3c")
case '=':
return []byte("%3d")
case '>':
return []byte("%3e")
case '?':
return []byte("%3f")
case '@':
return []byte("%40")
case '[':
return []byte("%5b")
case '\\':
return []byte("%5c")
case ']':
return []byte("%5d")
case '^':
return []byte("%5e")
case '`':
return []byte("%60")
case '{':
return []byte("%7b")
case '|':
return []byte("%7c")
case '}':
return []byte("%7d")
case '~':
return []byte("%7e")
default:
return []byte{b}
}
}