func NewPathReplace(path string) PathReplace {
	return PathReplace{
		path:    []byte(path),
		rawPath: []byte(path),
	}
}
NewPathReplace creats a built PathReplace value that can be used to replace
path elements.
package protocol
import (
	"bytes"
	"fmt"
)
const (
	uriTokenStart = '{'
	uriTokenStop  = '}'
	uriTokenSkip  = '+'
)
func bufCap(b []byte, n int) []byte {
	if cap(b) < n {
		return make([]byte, 0, n)
	}
	return b[0:0]
}
type PathReplace struct {
	path     []byte
	rawPath  []byte
	fieldBuf []byte
}