docs: func ConvertToList(in interface{}) (item []*dynamodb.AttributeValue, err error) {
  	defer func() {
  		if r := recover(); r != nil {
  			if e, ok := r.(runtime.Error); ok {
  				err = e
  			} else if s, ok := r.(string); ok {
  				err = fmt.Errorf(s)
  			} else {
  				err = r.(error)
  			}
  			item = nil
  		}
  	}()
  
  	if in == nil {
  		return nil, awserr.New("SerializationError",
  			"in must be an array or slice, got <nil>",
  			nil)
  	}
  
  	v := reflect.ValueOf(in)
  	if v.Kind() != reflect.Array && v.Kind() != reflect.Slice {
  		return nil, awserr.New("SerializationError",
  			fmt.Sprintf("in must be an array or slice, got %s",
  				v.Type().String()),
  			nil)
  	}
  
  	if isTyped(reflect.TypeOf(in)) {
  		var out []interface{}
  		in = convertToUntyped(in, out)
  	}
  
  	item = make([]*dynamodb.AttributeValue, 0, len(in.([]interface{})))
  	for _, v := range in.([]interface{}) {
  		item = append(item, convertTo(v))
  	}
  
  	return item, nil
  }