diff options
author | Jake Champlin <jake.champlin.27@gmail.com> | 2017-06-06 12:40:07 -0400 |
---|---|---|
committer | Jake Champlin <jake.champlin.27@gmail.com> | 2017-06-06 12:40:07 -0400 |
commit | bae9f6d2fd5eb5bc80929bd393932b23f14d7c93 (patch) | |
tree | ca9ab12a7d78b1fc27a8f734729081357ce6d252 /vendor/github.com/hashicorp/terraform/helper/config/decode.go | |
parent | 254c495b6bebab3fb72a243c4bce858d79e6ee99 (diff) | |
download | terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.tar.gz terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.tar.zst terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.zip |
Initial transfer of provider code
Diffstat (limited to 'vendor/github.com/hashicorp/terraform/helper/config/decode.go')
-rw-r--r-- | vendor/github.com/hashicorp/terraform/helper/config/decode.go | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/vendor/github.com/hashicorp/terraform/helper/config/decode.go b/vendor/github.com/hashicorp/terraform/helper/config/decode.go new file mode 100644 index 0000000..f470c9b --- /dev/null +++ b/vendor/github.com/hashicorp/terraform/helper/config/decode.go | |||
@@ -0,0 +1,28 @@ | |||
1 | package config | ||
2 | |||
3 | import ( | ||
4 | "github.com/mitchellh/mapstructure" | ||
5 | ) | ||
6 | |||
7 | func Decode(target interface{}, raws ...interface{}) (*mapstructure.Metadata, error) { | ||
8 | var md mapstructure.Metadata | ||
9 | decoderConfig := &mapstructure.DecoderConfig{ | ||
10 | Metadata: &md, | ||
11 | Result: target, | ||
12 | WeaklyTypedInput: true, | ||
13 | } | ||
14 | |||
15 | decoder, err := mapstructure.NewDecoder(decoderConfig) | ||
16 | if err != nil { | ||
17 | return nil, err | ||
18 | } | ||
19 | |||
20 | for _, raw := range raws { | ||
21 | err := decoder.Decode(raw) | ||
22 | if err != nil { | ||
23 | return nil, err | ||
24 | } | ||
25 | } | ||
26 | |||
27 | return &md, nil | ||
28 | } | ||