// resolveVars resolves all variables within the given value. The value
// may be one of the following types:
// - string
// - []interface{}
// - map[string]interface{}
// All other types will return with no resolution
resolveVars resolves all variables within the given value. The value
may be one of the following types:
- string
- []interface{}
- map[string]interface{}
All other types will return with no resolution
// resolveVars resolves all variables within the given value . The value // may be one of the following types : // - string // - [] interface {} // - map [ string ] interface {} // All other types will return with no resolution
func (s *state) resolveVars(val interface{}) (interface{}, error) {
	switch v := val.(type) {
	case string:
		val, err := s.resolve(v)
		if err != nil {
			return nil, err
		}
		return val, nil
	case []interface{}:
		val, err := s.resolveArray(v)
		if err != nil {
			return nil, err
		}
		return val, nil
	case map[string]interface{}:
		val, err := s.resolveMap(v)
		if err != nil {
			return nil, err
		}
		return val, nil
	default:
		return val, nil
	}
}
func ( s * state ) resolveVars ( val interface { } ) ( interface { } , error ) { switch v := val . ( type ) { case string : val , err := s . resolve ( v ) if err != nil { return nil , err } return val , nil case [ ] interface { } : val , err := s . resolveArray ( v ) if err != nil { return nil , err } return val , nil case map [ string ] interface { } : val , err := s . resolveMap ( v ) if err != nil { return nil , err } return val , nil default : return val , nil } }
resolveVars resolves all variables within the given value.
resolveVars resolves all variables within the given value .