in events/attributevalue.go [419:443]
func unmarshalMap(target *DynamoDBAttributeValue, value interface{}) error {
m, ok := value.(map[string]interface{})
if !ok {
return errors.New("DynamoDBAttributeValue: M type should contain a map")
}
DynamoDBAttributeValues := make(map[string]DynamoDBAttributeValue)
for k, v := range m {
elementMap, ok := v.(map[string]interface{})
if !ok {
return errors.New("DynamoDBAttributeValue: element of a map is not an DynamoDBAttributeValue")
}
var elementDynamoDBAttributeValue DynamoDBAttributeValue
err := unmarshalDynamoDBAttributeValueMap(&elementDynamoDBAttributeValue, elementMap)
if err != nil {
return errors.New("DynamoDBAttributeValue: unmarshal of child DynamoDBAttributeValue failed")
}
DynamoDBAttributeValues[k] = elementDynamoDBAttributeValue
}
target.value = DynamoDBAttributeValues
target.dataType = DataTypeMap
return nil
}