Export Replacer type

This commit is contained in:
Nimi Wariboko Jr 2015-05-03 12:43:50 -07:00
parent 082ae70d1d
commit a28d5585f5

View File

@ -8,17 +8,21 @@ import (
"time"
)
// replacer is a type which can replace placeholder
// Replacer is a type which can replace placeholder
// substrings in a string with actual values from a
// http.Request and responseRecorder. Always use
// NewReplacer to get one of these.
type Replacer interface {
Replace(string) string
}
type replacer map[string]string
// NewReplacer makes a new replacer based on r and rr.
// Do not create a new replacer until r and rr have all
// the needed values, because this function copies those
// values into the replacer.
func NewReplacer(r *http.Request, rr *responseRecorder) replacer {
func NewReplacer(r *http.Request, rr *responseRecorder) Replacer {
rep := replacer{
"{method}": r.Method,
"{scheme}": func() string {