aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/strings.h
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2024-05-24 19:18:11 +0000
committerJosh Rahm <joshuarahm@gmail.com>2024-05-24 19:18:11 +0000
commitff7ed8f586589d620a806c3758fac4a47a8e7e15 (patch)
tree729bbcb92231538fa61dab6c3d890b025484b7f5 /src/nvim/strings.h
parent376914f419eb08fdf4c1a63a77e1f035898a0f10 (diff)
parent28c04948a1c887a1cc0cb64de79fa32631700466 (diff)
downloadrneovim-ff7ed8f586589d620a806c3758fac4a47a8e7e15.tar.gz
rneovim-ff7ed8f586589d620a806c3758fac4a47a8e7e15.tar.bz2
rneovim-ff7ed8f586589d620a806c3758fac4a47a8e7e15.zip
Merge remote-tracking branch 'upstream/master' into mix_20240309
Diffstat (limited to 'src/nvim/strings.h')
-rw-r--r--src/nvim/strings.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/nvim/strings.h b/src/nvim/strings.h
index 903559b062..f80e85afb0 100644
--- a/src/nvim/strings.h
+++ b/src/nvim/strings.h
@@ -32,6 +32,18 @@ static inline char *strappend(char *const dst, const char *const src)
typedef kvec_t(char) StringBuilder;
+// Return the length of a string literal
+#define STRLEN_LITERAL(s) (sizeof(s) - 1)
+
+/// Store a key/value pair
+typedef struct {
+ int key; ///< the key
+ char *value; ///< the value string
+ size_t length; ///< length of the value string
+} keyvalue_T;
+
+#define KEYVALUE_ENTRY(k, v) { (k), (v), STRLEN_LITERAL(v) }
+
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "strings.h.generated.h"
#endif