in walk.go [39:48]
func walk(inVal reflect.Value, expandPaths bool, wo walkObserver) error {
switch inVal.Kind() {
case reflect.Map:
return walkMap(inVal, expandPaths, wo)
case reflect.Slice:
return walkSlice(inVal, expandPaths, wo)
default:
return walkInterface(inVal, expandPaths, wo)
}
}