aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/encode.c
diff options
context:
space:
mode:
authorSean Dewar <seandewar@users.noreply.github.com>2021-07-29 14:05:55 +0100
committerSean Dewar <seandewar@users.noreply.github.com>2021-09-16 00:14:47 +0100
commit5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c (patch)
treef623f69519eab66cfd5afb0ff9e84c36e69ca1ea /src/nvim/eval/encode.c
parent7e9ea083213c3eb195fbf206f12a3aac1fa29033 (diff)
downloadrneovim-5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c.tar.gz
rneovim-5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c.tar.bz2
rneovim-5fdf741f77c3b6ebed9b5cdc0e9d1043080beb3c.zip
feat(f_msgpackdump): support dumping to Blob
Diffstat (limited to 'src/nvim/eval/encode.c')
-rw-r--r--src/nvim/eval/encode.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/nvim/eval/encode.c b/src/nvim/eval/encode.c
index 1c2274c410..b5e50e7ef5 100644
--- a/src/nvim/eval/encode.c
+++ b/src/nvim/eval/encode.c
@@ -47,6 +47,14 @@ const char *const encode_special_var_names[] = {
# include "eval/encode.c.generated.h"
#endif
+/// Msgpack callback for writing to a Blob
+int encode_blob_write(void *const data, const char *const buf, const size_t len)
+ FUNC_ATTR_NONNULL_ARG(1)
+{
+ ga_concat_len(&((blob_T *)data)->bv_ga, buf, len);
+ return (int)len;
+}
+
/// Msgpack callback for writing to readfile()-style list
int encode_list_write(void *const data, const char *const buf, const size_t len)
FUNC_ATTR_NONNULL_ARG(1)