| 1339 | * Writes a value to a nested array at the current index. |
| 1340 | */ |
| 1341 | pgbson_require_alignment() void |
| 1342 | PgbsonArrayWriterWriteValue(pgbson_array_writer *writer, |
| 1343 | const bson_value_t *value) |
| 1344 | { |
| 1345 | char buffer[20]; |
| 1346 | const char *key; |
| 1347 | uint32_t keyLength = bson_uint32_to_string(writer->index, &key, buffer, |
| 1348 | sizeof buffer); |
| 1349 | if (!bson_append_value(&(writer->innerBson), key, keyLength, value)) |
| 1350 | { |
| 1351 | ereport(ERROR, (errcode(ERRCODE_DOCUMENTDB_BADVALUE), errmsg( |
| 1352 | "adding ArrayWriterWriteValue %s value: failed due to value being too large", |
| 1353 | BsonTypeName(value->value_type))) |
| 1354 | ); |
| 1355 | } |
| 1356 | writer->index++; |
| 1357 | } |
| 1358 | |
| 1359 | |
| 1360 | /* |
no test coverage detected