File: //home/ubuntu/neovim/build/src/nvim/auto/popupmenu.h.i
# 1 "/home/ubuntu/neovim/src/nvim/popupmenu.h"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1 "/home/ubuntu/neovim/src/nvim/popupmenu.h"
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdbool.h" 1 3 4
# 4 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 1
# 1 "/usr/include/inttypes.h" 1 3 4
# 25 "/usr/include/inttypes.h" 3 4
# 1 "/usr/include/features.h" 1 3 4
# 461 "/usr/include/features.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 1 3 4
# 452 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 453 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/long-double.h" 1 3 4
# 454 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 2 3 4
# 462 "/usr/include/features.h" 2 3 4
# 485 "/usr/include/features.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 1 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 6 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h" 1 3 4
# 9 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 2 3 4
# 486 "/usr/include/features.h" 2 3 4
# 26 "/usr/include/inttypes.h" 2 3 4
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdint.h" 1 3 4
# 9 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdint.h" 3 4
# 1 "/usr/include/stdint.h" 1 3 4
# 26 "/usr/include/stdint.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/libc-header-start.h" 1 3 4
# 27 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/types.h" 1 3 4
# 27 "/usr/include/aarch64-linux-gnu/bits/types.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 28 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 1 3 4
# 19 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 20 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 2 3 4
# 29 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4
# 31 "/usr/include/aarch64-linux-gnu/bits/types.h" 3 4
typedef unsigned char __u_char;
typedef unsigned short int __u_short;
typedef unsigned int __u_int;
typedef unsigned long int __u_long;
typedef signed char __int8_t;
typedef unsigned char __uint8_t;
typedef signed short int __int16_t;
typedef unsigned short int __uint16_t;
typedef signed int __int32_t;
typedef unsigned int __uint32_t;
typedef signed long int __int64_t;
typedef unsigned long int __uint64_t;
typedef __int8_t __int_least8_t;
typedef __uint8_t __uint_least8_t;
typedef __int16_t __int_least16_t;
typedef __uint16_t __uint_least16_t;
typedef __int32_t __int_least32_t;
typedef __uint32_t __uint_least32_t;
typedef __int64_t __int_least64_t;
typedef __uint64_t __uint_least64_t;
typedef long int __quad_t;
typedef unsigned long int __u_quad_t;
typedef long int __intmax_t;
typedef unsigned long int __uintmax_t;
# 141 "/usr/include/aarch64-linux-gnu/bits/types.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/typesizes.h" 1 3 4
# 142 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/time64.h" 1 3 4
# 143 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4
typedef unsigned long int __dev_t;
typedef unsigned int __uid_t;
typedef unsigned int __gid_t;
typedef unsigned long int __ino_t;
typedef unsigned long int __ino64_t;
typedef unsigned int __mode_t;
typedef unsigned int __nlink_t;
typedef long int __off_t;
typedef long int __off64_t;
typedef int __pid_t;
typedef struct { int __val[2]; } __fsid_t;
typedef long int __clock_t;
typedef unsigned long int __rlim_t;
typedef unsigned long int __rlim64_t;
typedef unsigned int __id_t;
typedef long int __time_t;
typedef unsigned int __useconds_t;
typedef long int __suseconds_t;
typedef int __daddr_t;
typedef int __key_t;
typedef int __clockid_t;
typedef void * __timer_t;
typedef int __blksize_t;
typedef long int __blkcnt_t;
typedef long int __blkcnt64_t;
typedef unsigned long int __fsblkcnt_t;
typedef unsigned long int __fsblkcnt64_t;
typedef unsigned long int __fsfilcnt_t;
typedef unsigned long int __fsfilcnt64_t;
typedef long int __fsword_t;
typedef long int __ssize_t;
typedef long int __syscall_slong_t;
typedef unsigned long int __syscall_ulong_t;
typedef __off64_t __loff_t;
typedef char *__caddr_t;
typedef long int __intptr_t;
typedef unsigned int __socklen_t;
typedef int __sig_atomic_t;
# 28 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wchar.h" 1 3 4
# 29 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 30 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/stdint-intn.h" 1 3 4
# 24 "/usr/include/aarch64-linux-gnu/bits/stdint-intn.h" 3 4
typedef __int8_t int8_t;
typedef __int16_t int16_t;
typedef __int32_t int32_t;
typedef __int64_t int64_t;
# 35 "/usr/include/stdint.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h" 1 3 4
# 24 "/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h" 3 4
typedef __uint8_t uint8_t;
typedef __uint16_t uint16_t;
typedef __uint32_t uint32_t;
typedef __uint64_t uint64_t;
# 38 "/usr/include/stdint.h" 2 3 4
typedef __int_least8_t int_least8_t;
typedef __int_least16_t int_least16_t;
typedef __int_least32_t int_least32_t;
typedef __int_least64_t int_least64_t;
typedef __uint_least8_t uint_least8_t;
typedef __uint_least16_t uint_least16_t;
typedef __uint_least32_t uint_least32_t;
typedef __uint_least64_t uint_least64_t;
typedef signed char int_fast8_t;
typedef long int int_fast16_t;
typedef long int int_fast32_t;
typedef long int int_fast64_t;
# 71 "/usr/include/stdint.h" 3 4
typedef unsigned char uint_fast8_t;
typedef unsigned long int uint_fast16_t;
typedef unsigned long int uint_fast32_t;
typedef unsigned long int uint_fast64_t;
# 87 "/usr/include/stdint.h" 3 4
typedef long int intptr_t;
typedef unsigned long int uintptr_t;
# 101 "/usr/include/stdint.h" 3 4
typedef __intmax_t intmax_t;
typedef __uintmax_t uintmax_t;
# 10 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdint.h" 2 3 4
# 28 "/usr/include/inttypes.h" 2 3 4
typedef unsigned int __gwchar_t;
# 266 "/usr/include/inttypes.h" 3 4
typedef struct
{
long int quot;
long int rem;
} imaxdiv_t;
# 290 "/usr/include/inttypes.h" 3 4
extern intmax_t imaxabs (intmax_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
extern imaxdiv_t imaxdiv (intmax_t __numer, intmax_t __denom)
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
extern intmax_t strtoimax (const char *__restrict __nptr,
char **__restrict __endptr, int __base) __attribute__ ((__nothrow__ , __leaf__));
extern uintmax_t strtoumax (const char *__restrict __nptr,
char ** __restrict __endptr, int __base) __attribute__ ((__nothrow__ , __leaf__));
extern intmax_t wcstoimax (const __gwchar_t *__restrict __nptr,
__gwchar_t **__restrict __endptr, int __base)
__attribute__ ((__nothrow__ , __leaf__));
extern uintmax_t wcstoumax (const __gwchar_t *__restrict __nptr,
__gwchar_t ** __restrict __endptr, int __base)
__attribute__ ((__nothrow__ , __leaf__));
# 432 "/usr/include/inttypes.h" 3 4
# 4 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 1 3 4
# 34 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 3 4
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/syslimits.h" 1 3 4
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 1 3 4
# 194 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 3 4
# 1 "/usr/include/limits.h" 1 3 4
# 26 "/usr/include/limits.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/libc-header-start.h" 1 3 4
# 27 "/usr/include/limits.h" 2 3 4
# 183 "/usr/include/limits.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/posix1_lim.h" 1 3 4
# 27 "/usr/include/aarch64-linux-gnu/bits/posix1_lim.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4
# 28 "/usr/include/aarch64-linux-gnu/bits/posix1_lim.h" 2 3 4
# 161 "/usr/include/aarch64-linux-gnu/bits/posix1_lim.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/local_lim.h" 1 3 4
# 39 "/usr/include/aarch64-linux-gnu/bits/local_lim.h" 3 4
# 1 "/usr/include/linux/limits.h" 1 3 4
# 40 "/usr/include/aarch64-linux-gnu/bits/local_lim.h" 2 3 4
# 162 "/usr/include/aarch64-linux-gnu/bits/posix1_lim.h" 2 3 4
# 184 "/usr/include/limits.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/posix2_lim.h" 1 3 4
# 188 "/usr/include/limits.h" 2 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/xopen_lim.h" 1 3 4
# 64 "/usr/include/aarch64-linux-gnu/bits/xopen_lim.h" 3 4
# 1 "/usr/include/aarch64-linux-gnu/bits/uio_lim.h" 1 3 4
# 65 "/usr/include/aarch64-linux-gnu/bits/xopen_lim.h" 2 3 4
# 192 "/usr/include/limits.h" 2 3 4
# 195 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 2 3 4
# 8 "/usr/lib/gcc/aarch64-linux-gnu/9/include/syslimits.h" 2 3 4
# 35 "/usr/lib/gcc/aarch64-linux-gnu/9/include/limits.h" 2 3 4
# 5 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/garray_defs.h" 1
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 1 3 4
# 143 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4
typedef long int ptrdiff_t;
# 209 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4
typedef long unsigned int size_t;
# 321 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4
typedef unsigned int wchar_t;
# 415 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4
typedef struct {
long long __max_align_ll __attribute__((__aligned__(__alignof__(long long))));
long double __max_align_ld __attribute__((__aligned__(__alignof__(long double))));
# 426 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4
} max_align_t;
# 4 "/home/ubuntu/neovim/src/nvim/garray_defs.h" 2
# 8 "/home/ubuntu/neovim/src/nvim/garray_defs.h"
typedef struct {
int ga_len;
int ga_maxlen;
int ga_itemsize;
int ga_growsize;
void *ga_data;
} garray_T;
# 8 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/hashtab_defs.h" 1
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 1 3 4
# 4 "/home/ubuntu/neovim/src/nvim/hashtab_defs.h" 2
typedef size_t hash_T;
# 24 "/home/ubuntu/neovim/src/nvim/hashtab_defs.h"
typedef struct {
hash_T hi_hash;
char *hi_key;
} hashitem_T;
enum {
HT_INIT_SIZE = 16,
};
typedef struct {
hash_T ht_mask;
size_t ht_used;
size_t ht_filled;
int ht_changed;
int ht_locked;
hashitem_T *ht_array;
hashitem_T ht_smallarray[HT_INIT_SIZE];
} hashtab_T;
# 9 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/lib/queue_defs.h" 1
# 20 "/home/ubuntu/neovim/src/nvim/lib/queue_defs.h"
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 1 3 4
# 23 "/home/ubuntu/neovim/src/nvim/lib/queue_defs.h" 2
typedef struct queue {
struct queue *next;
struct queue *prev;
} QUEUE;
# 49 "/home/ubuntu/neovim/src/nvim/lib/queue_defs.h"
static inline int QUEUE_EMPTY(const QUEUE *const q)
FUNC_ATTR_ALWAYS_INLINE FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT
{
return q == q->next;
}
static inline void QUEUE_INIT(QUEUE *const q)
FUNC_ATTR_ALWAYS_INLINE
{
q->next = q;
q->prev = q;
}
static inline void QUEUE_ADD(QUEUE *const h, QUEUE *const n)
FUNC_ATTR_ALWAYS_INLINE
{
h->prev->next = n->next;
n->next->prev = h->prev;
h->prev = n->prev;
h->prev->next = h;
}
static inline void QUEUE_INSERT_HEAD(QUEUE *const h, QUEUE *const q)
FUNC_ATTR_ALWAYS_INLINE
{
q->next = h->next;
q->prev = h;
q->next->prev = q;
h->next = q;
}
static inline void QUEUE_INSERT_TAIL(QUEUE *const h, QUEUE *const q)
FUNC_ATTR_ALWAYS_INLINE
{
q->next = h;
q->prev = h->prev;
q->prev->next = q;
h->prev = q;
}
static inline void QUEUE_REMOVE(QUEUE *const q)
FUNC_ATTR_ALWAYS_INLINE
{
q->prev->next = q->next;
q->next->prev = q->prev;
}
# 10 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/pos_defs.h" 1
typedef int32_t linenr_T;
typedef int colnr_T;
enum { MAXLNUM = 0x7fffffff, };
enum { MAXCOL = 0x7fffffff, };
enum { MINLNUM = 1, };
enum { MINCOL = 1, };
typedef struct {
linenr_T lnum;
colnr_T col;
colnr_T coladd;
} pos_T;
typedef struct {
linenr_T lnum;
colnr_T col;
} lpos_T;
# 11 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/types_defs.h" 1
typedef void *vim_acl_T;
typedef uint32_t schar_T;
typedef int32_t sattr_T;
typedef int32_t sscratch_T;
typedef int handle_T;
typedef int LuaRef;
typedef double float_T;
typedef struct MsgpackRpcRequestHandler MsgpackRpcRequestHandler;
typedef union {
float_T (*float_func)(float_T);
const MsgpackRpcRequestHandler *api_handler;
void *null;
} EvalFuncData;
typedef handle_T NS;
typedef uint64_t proftime_T;
typedef enum {
kNone = -1,
kFalse = 0,
kTrue = 1,
} TriState;
typedef int64_t OptInt;
enum { SIGN_WIDTH = 2, };
typedef struct file_buffer buf_T;
typedef struct loop Loop;
typedef struct regprog regprog_T;
typedef struct syn_state synstate_T;
typedef struct terminal Terminal;
typedef struct window_S win_T;
typedef struct {
uint32_t nitems;
uint32_t nbytes;
char data[];
} AdditionalData;
# 12 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 2
typedef int64_t varnumber_T;
typedef uint64_t uvarnumber_T;
enum {
DO_NOT_FREE_CNT = (0x7fffffff / 2),
};
enum ListLenSpecials {
kListLenUnknown = -1,
kListLenShouldKnow = -2,
kListLenMayKnow = -3,
};
# 51 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
typedef struct listvar_S list_T;
typedef struct dictvar_S dict_T;
typedef struct partial_S partial_T;
typedef struct blobvar_S blob_T;
typedef struct ufunc ufunc_T;
typedef enum {
kCallbackNone = 0,
kCallbackFuncref,
kCallbackPartial,
kCallbackLua,
} CallbackType;
typedef struct {
union {
char *funcref;
partial_T *partial;
LuaRef luaref;
} data;
CallbackType type;
} Callback;
typedef struct {
Callback callback;
char *key_pattern;
size_t key_pattern_len;
QUEUE node;
# 83 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 3 4
_Bool
# 83 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
busy;
# 84 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 3 4
_Bool
# 84 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
needs_free;
} DictWatcher;
typedef enum {
kBoolVarFalse,
kBoolVarTrue,
} BoolVarValue;
typedef enum {
kSpecialVarNull,
} SpecialVarValue;
typedef enum {
VAR_UNLOCKED = 0,
VAR_LOCKED = 1,
VAR_FIXED = 2,
} VarLockStatus;
typedef enum {
VAR_UNKNOWN = 0,
VAR_NUMBER,
VAR_STRING,
VAR_FUNC,
VAR_LIST,
VAR_DICT,
VAR_FLOAT,
VAR_BOOL,
VAR_SPECIAL,
VAR_PARTIAL,
VAR_BLOB,
} VarType;
enum {
VAR_TYPE_NUMBER = 0,
VAR_TYPE_STRING = 1,
VAR_TYPE_FUNC = 2,
VAR_TYPE_LIST = 3,
VAR_TYPE_DICT = 4,
VAR_TYPE_FLOAT = 5,
VAR_TYPE_BOOL = 6,
VAR_TYPE_SPECIAL = 7,
VAR_TYPE_BLOB = 10,
};
typedef struct {
VarType v_type;
VarLockStatus v_lock;
union typval_vval_union {
varnumber_T v_number;
BoolVarValue v_bool;
SpecialVarValue v_special;
float_T v_float;
char *v_string;
list_T *v_list;
dict_T *v_dict;
partial_T *v_partial;
blob_T *v_blob;
} vval;
} typval_T;
# 157 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
typedef enum {
VAR_NO_SCOPE = 0,
VAR_SCOPE = 1,
VAR_DEF_SCOPE = 2,
} ScopeType;
typedef struct listitem_S listitem_T;
struct listitem_S {
listitem_T *li_next;
listitem_T *li_prev;
typval_T li_tv;
};
typedef struct listwatch_S listwatch_T;
struct listwatch_S {
listitem_T *lw_item;
listwatch_T *lw_next;
};
struct listvar_S {
listitem_T *lv_first;
listitem_T *lv_last;
listwatch_T *lv_watch;
listitem_T *lv_idx_item;
list_T *lv_copylist;
list_T *lv_used_next;
list_T *lv_used_prev;
int lv_refcount;
int lv_len;
int lv_idx;
int lv_copyID;
VarLockStatus lv_lock;
LuaRef lua_table_ref;
};
typedef struct {
list_T sl_list;
listitem_T sl_items[10];
} staticList10_T;
# 233 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
typedef struct { typval_T di_tv; uint8_t di_flags; char di_key[1]; } ScopeDictDictItem;
typedef struct { typval_T di_tv; uint8_t di_flags; char di_key[]; } dictitem_T;
typedef enum {
DI_FLAGS_RO = 1,
DI_FLAGS_RO_SBX = 2,
DI_FLAGS_FIX = 4,
DI_FLAGS_LOCK = 8,
DI_FLAGS_ALLOC = 16,
} DictItemFlags;
struct dictvar_S {
VarLockStatus dv_lock;
ScopeType dv_scope;
int dv_refcount;
int dv_copyID;
hashtab_T dv_hashtab;
dict_T *dv_copydict;
dict_T *dv_used_next;
dict_T *dv_used_prev;
QUEUE watchers;
LuaRef lua_table_ref;
};
struct blobvar_S {
garray_T bv_ga;
int bv_refcount;
VarLockStatus bv_lock;
};
typedef int scid_T;
# 285 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
typedef struct {
scid_T sc_sid;
int sc_seq;
linenr_T sc_lnum;
} sctx_T;
typedef struct {
sctx_T script_ctx;
uint64_t channel_id;
} LastSet;
enum { MAX_FUNC_ARGS = 20, };
enum { VAR_SHORT_LEN = 20, };
enum { FIXVAR_CNT = 12, };
typedef struct funccall_S funccall_T;
struct funccall_S {
ufunc_T *fc_func;
int fc_linenr;
int fc_returned;
struct { typval_T di_tv; uint8_t di_flags; char di_key[VAR_SHORT_LEN + 1]; } fc_fixvar[FIXVAR_CNT];
dict_T fc_l_vars;
ScopeDictDictItem fc_l_vars_var;
dict_T fc_l_avars;
ScopeDictDictItem fc_l_avars_var;
list_T fc_l_varlist;
listitem_T fc_l_listitems[MAX_FUNC_ARGS];
typval_T *fc_rettv;
linenr_T fc_breakpoint;
int fc_dbg_tick;
int fc_level;
garray_T fc_defer;
proftime_T fc_prof_child;
funccall_T *fc_caller;
int fc_refcount;
int fc_copyID;
garray_T fc_ufuncs;
};
struct ufunc {
int uf_varargs;
int uf_flags;
int uf_calls;
# 333 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 3 4
_Bool
# 333 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
uf_cleared;
garray_T uf_args;
garray_T uf_def_args;
garray_T uf_lines;
int uf_profiling;
int uf_prof_initialized;
LuaRef uf_luaref;
int uf_tm_count;
proftime_T uf_tm_total;
proftime_T uf_tm_self;
proftime_T uf_tm_children;
int *uf_tml_count;
proftime_T *uf_tml_total;
proftime_T *uf_tml_self;
proftime_T uf_tml_start;
proftime_T uf_tml_children;
proftime_T uf_tml_wait;
int uf_tml_idx;
int uf_tml_execed;
sctx_T uf_script_ctx;
int uf_refcount;
funccall_T *uf_scoped;
char *uf_name_exp;
char uf_name[];
};
struct partial_S {
int pt_refcount;
int pt_copyID;
char *pt_name;
ufunc_T *pt_func;
# 370 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h" 3 4
_Bool
# 370 "/home/ubuntu/neovim/src/nvim/eval/typval_defs.h"
pt_auto;
int pt_argc;
typval_T *pt_argv;
dict_T *pt_dict;
};
typedef struct ht_stack_S {
hashtab_T *ht;
struct ht_stack_S *prev;
} ht_stack_T;
typedef struct list_stack_S {
list_T *list;
struct list_stack_S *prev;
} list_stack_T;
# 6 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 1
# 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 1 3 4
# 5 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 2
# 14 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
enum {
kZIndexDefaultGrid = 0,
kZIndexFloatDefault = 50,
kZIndexPopupMenu = 100,
kZIndexMessages = 200,
kZIndexCmdlinePopupMenu = 250,
};
# 48 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
typedef struct ScreenGrid ScreenGrid;
struct ScreenGrid {
handle_T handle;
schar_T *chars;
sattr_T *attrs;
colnr_T *vcols;
size_t *line_offset;
int *dirty_col;
int rows;
int cols;
# 66 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 66 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
valid;
# 70 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 70 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
throttled;
int row_offset;
int col_offset;
ScreenGrid *target;
# 81 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 81 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
blending;
# 84 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 84 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
focusable;
int zindex;
int comp_row;
int comp_col;
int comp_width;
int comp_height;
size_t comp_index;
# 108 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 108 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
comp_disabled;
};
typedef struct {
int args[3];
int icell;
int ncells;
int coloff;
int cur_attr;
int clear_width;
# 122 "/home/ubuntu/neovim/src/nvim/grid_defs.h" 3 4
_Bool
# 122 "/home/ubuntu/neovim/src/nvim/grid_defs.h"
wrap;
} GridLineEvent;
# 7 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/macros_defs.h" 1
# 1 "/home/ubuntu/neovim/build/cmake.config/auto/config.h" 1
# 4 "/home/ubuntu/neovim/src/nvim/macros_defs.h" 2
# 8 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 2
# 1 "/home/ubuntu/neovim/src/nvim/menu_defs.h" 1
enum {
MENU_INDEX_INVALID = -1,
MENU_INDEX_NORMAL = 0,
MENU_INDEX_VISUAL = 1,
MENU_INDEX_SELECT = 2,
MENU_INDEX_OP_PENDING = 3,
MENU_INDEX_INSERT = 4,
MENU_INDEX_CMDLINE = 5,
MENU_INDEX_TERMINAL = 6,
MENU_INDEX_TIP = 7,
MENU_MODES = 8,
};
enum {
MENU_NORMAL_MODE = 1 << MENU_INDEX_NORMAL,
MENU_VISUAL_MODE = 1 << MENU_INDEX_VISUAL,
MENU_SELECT_MODE = 1 << MENU_INDEX_SELECT,
MENU_OP_PENDING_MODE = 1 << MENU_INDEX_OP_PENDING,
MENU_INSERT_MODE = 1 << MENU_INDEX_INSERT,
MENU_CMDLINE_MODE = 1 << MENU_INDEX_CMDLINE,
MENU_TERMINAL_MODE = 1 << MENU_INDEX_TERMINAL,
MENU_TIP_MODE = 1 << MENU_INDEX_TIP,
MENU_ALL_MODES = (1 << MENU_INDEX_TIP) - 1,
};
typedef struct VimMenu vimmenu_T;
struct VimMenu {
int modes;
int enabled;
char *name;
char *dname;
char *en_name;
char *en_dname;
int mnemonic;
char *actext;
int priority;
char *strings[MENU_MODES];
int noremap[MENU_MODES];
# 57 "/home/ubuntu/neovim/src/nvim/menu_defs.h" 3 4
_Bool
# 57 "/home/ubuntu/neovim/src/nvim/menu_defs.h"
silent[MENU_MODES];
vimmenu_T *children;
vimmenu_T *parent;
vimmenu_T *next;
};
# 9 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 2
typedef struct {
char *pum_text;
char *pum_kind;
char *pum_extra;
char *pum_info;
int pum_score;
int pum_idx;
int pum_user_hlattr;
int pum_user_kind_hlattr;
} pumitem_T;
extern ScreenGrid pum_grid ;
extern struct {
# 27 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 3 4
_Bool
# 27 "/home/ubuntu/neovim/src/nvim/popupmenu.h"
active;
int item;
# 29 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 3 4
_Bool
# 29 "/home/ubuntu/neovim/src/nvim/popupmenu.h"
insert;
# 30 "/home/ubuntu/neovim/src/nvim/popupmenu.h" 3 4
_Bool
# 30 "/home/ubuntu/neovim/src/nvim/popupmenu.h"
finish;
} pum_want;