1#ifndef NVIM_TYPES_H
2#define NVIM_TYPES_H
3
4#include <stdint.h>
5
6// dummy to pass an ACL to a function
7typedef void *vim_acl_T;
8
9// Shorthand for unsigned variables. Many systems, but not all, have u_char
10// already defined, so we use char_u to avoid trouble.
11typedef unsigned char char_u;
12
13// Can hold one decoded UTF-8 character.
14typedef uint32_t u8char_T;
15
16// Opaque handle used by API clients to refer to various objects in vim
17typedef int handle_T;
18
19// Opaque handle to a lua value. Must be free with `executor_free_luaref` when
20// not needed anymore! LUA_NOREF represents missing reference, i e to indicate
21// absent callback etc.
22typedef int LuaRef;
23
24typedef struct expand expand_T;
25
26typedef enum {
27 kNone = -1,
28 kFalse = 0,
29 kTrue = 1,
30} TriState;
31
32#endif // NVIM_TYPES_H
33