]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blobdiff - vendor/github.com/aws/aws-sdk-go/aws/awsutil/string_value.go
Upgrade to 0.12
[github/fretlink/terraform-provider-statuscake.git] / vendor / github.com / aws / aws-sdk-go / aws / awsutil / string_value.go
index b6432f1a1188d00439639ed516bb410d13efb7dd..645df2450fc5b1300e9c2dd6e9f436952ddcf26b 100644 (file)
@@ -23,28 +23,27 @@ func stringValue(v reflect.Value, indent int, buf *bytes.Buffer) {
        case reflect.Struct:
                buf.WriteString("{\n")
 
-               names := []string{}
                for i := 0; i < v.Type().NumField(); i++ {
-                       name := v.Type().Field(i).Name
-                       f := v.Field(i)
-                       if name[0:1] == strings.ToLower(name[0:1]) {
+                       ft := v.Type().Field(i)
+                       fv := v.Field(i)
+
+                       if ft.Name[0:1] == strings.ToLower(ft.Name[0:1]) {
                                continue // ignore unexported fields
                        }
-                       if (f.Kind() == reflect.Ptr || f.Kind() == reflect.Slice) && f.IsNil() {
+                       if (fv.Kind() == reflect.Ptr || fv.Kind() == reflect.Slice) && fv.IsNil() {
                                continue // ignore unset fields
                        }
-                       names = append(names, name)
-               }
 
-               for i, n := range names {
-                       val := v.FieldByName(n)
                        buf.WriteString(strings.Repeat(" ", indent+2))
-                       buf.WriteString(n + ": ")
-                       stringValue(val, indent+2, buf)
+                       buf.WriteString(ft.Name + ": ")
 
-                       if i < len(names)-1 {
-                               buf.WriteString(",\n")
+                       if tag := ft.Tag.Get("sensitive"); tag == "true" {
+                               buf.WriteString("<sensitive>")
+                       } else {
+                               stringValue(fv, indent+2, buf)
                        }
+
+                       buf.WriteString(",\n")
                }
 
                buf.WriteString("\n" + strings.Repeat(" ", indent) + "}")