mirror of
https://github.com/neovim/neovim.git
synced 2025-09-28 14:08:32 +00:00
36
src/nvim/eval/userfunc.h
Normal file
36
src/nvim/eval/userfunc.h
Normal file
@@ -0,0 +1,36 @@
|
||||
#ifndef NVIM_EVAL_USERFUNC_H
|
||||
#define NVIM_EVAL_USERFUNC_H
|
||||
|
||||
#include "nvim/eval/typval.h"
|
||||
#include "nvim/ex_cmds_defs.h"
|
||||
|
||||
///< Structure used by trans_function_name()
|
||||
typedef struct {
|
||||
dict_T *fd_dict; ///< Dictionary used.
|
||||
char_u *fd_newkey; ///< New key in "dict" in allocated memory.
|
||||
dictitem_T *fd_di; ///< Dictionary item used.
|
||||
} funcdict_T;
|
||||
|
||||
/// errors for when calling a function
|
||||
typedef enum {
|
||||
ERROR_UNKNOWN = 0,
|
||||
ERROR_TOOMANY,
|
||||
ERROR_TOOFEW,
|
||||
ERROR_SCRIPT,
|
||||
ERROR_DICT,
|
||||
ERROR_NONE,
|
||||
ERROR_OTHER,
|
||||
ERROR_BOTH,
|
||||
ERROR_DELETED,
|
||||
} FnameTransError;
|
||||
|
||||
typedef int (*ArgvFunc)(int current_argcount, typval_T *argv, int argskip,
|
||||
int called_func_argcount);
|
||||
|
||||
#define FUNCARG(fp, j) ((char_u **)(fp->uf_args.ga_data))[j]
|
||||
#define FUNCLINE(fp, j) ((char_u **)(fp->uf_lines.ga_data))[j]
|
||||
|
||||
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
||||
# include "eval/userfunc.h.generated.h"
|
||||
#endif
|
||||
#endif // NVIM_EVAL_USERFUNC_H
|
Reference in New Issue
Block a user