github.com/aavshr/aws-sdk-go@v1.41.3/service/dynamodb/dynamodbattribute/converter_examples_test.go (about)

     1  package dynamodbattribute_test
     2  
     3  import (
     4  	"fmt"
     5  	"reflect"
     6  
     7  	"github.com/aavshr/aws-sdk-go/service/dynamodb/dynamodbattribute"
     8  )
     9  
    10  func ExampleConvertTo() {
    11  	type Record struct {
    12  		MyField string
    13  		Letters []string
    14  		Numbers []int
    15  	}
    16  
    17  	r := Record{
    18  		MyField: "MyFieldValue",
    19  		Letters: []string{"a", "b", "c", "d"},
    20  		Numbers: []int{1, 2, 3},
    21  	}
    22  	av, err := dynamodbattribute.ConvertTo(r)
    23  	fmt.Println("err", err)
    24  	fmt.Println("MyField", av.M["MyField"])
    25  	fmt.Println("Letters", av.M["Letters"])
    26  	fmt.Println("Numbers", av.M["Numbers"])
    27  
    28  	// Output:
    29  	// err <nil>
    30  	// MyField {
    31  	//   S: "MyFieldValue"
    32  	// }
    33  	// Letters {
    34  	//   L: [
    35  	//     {
    36  	//       S: "a"
    37  	//     },
    38  	//     {
    39  	//       S: "b"
    40  	//     },
    41  	//     {
    42  	//       S: "c"
    43  	//     },
    44  	//     {
    45  	//       S: "d"
    46  	//     }
    47  	//   ]
    48  	// }
    49  	// Numbers {
    50  	//   L: [{
    51  	//       N: "1"
    52  	//     },{
    53  	//       N: "2"
    54  	//     },{
    55  	//       N: "3"
    56  	//     }]
    57  	// }
    58  }
    59  
    60  func ExampleConvertFrom() {
    61  	type Record struct {
    62  		MyField string
    63  		Letters []string
    64  		A2Num   map[string]int
    65  	}
    66  
    67  	r := Record{
    68  		MyField: "MyFieldValue",
    69  		Letters: []string{"a", "b", "c", "d"},
    70  		A2Num:   map[string]int{"a": 1, "b": 2, "c": 3},
    71  	}
    72  	av, err := dynamodbattribute.ConvertTo(r)
    73  
    74  	r2 := Record{}
    75  	err = dynamodbattribute.ConvertFrom(av, &r2)
    76  	fmt.Println(err, reflect.DeepEqual(r, r2))
    77  
    78  	// Output:
    79  	// <nil> true
    80  }