diff options
author | Jakub Łuczyński <doubleloop@o2.pl> | 2020-02-10 00:33:26 -0800 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2020-02-10 00:36:26 -0800 |
commit | 6c5bbf07d988ef55e5e8ba8d70b62c1f0885261b (patch) | |
tree | 4d0c008fad40bf5c6f4516d3c84534b172f8d61f /src/nvim/eval/funcs.h | |
parent | d34f042ed539565be3915745162eff13a8a0043a (diff) | |
download | rneovim-6c5bbf07d988ef55e5e8ba8d70b62c1f0885261b.tar.gz rneovim-6c5bbf07d988ef55e5e8ba8d70b62c1f0885261b.tar.bz2 rneovim-6c5bbf07d988ef55e5e8ba8d70b62c1f0885261b.zip |
eval.c: factor out eval/funcs.c #11828
close #11828
ref #5081
cf. vim patch 7.4.2063
Diffstat (limited to 'src/nvim/eval/funcs.h')
-rw-r--r-- | src/nvim/eval/funcs.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/nvim/eval/funcs.h b/src/nvim/eval/funcs.h new file mode 100644 index 0000000000..a343290734 --- /dev/null +++ b/src/nvim/eval/funcs.h @@ -0,0 +1,24 @@ +#ifndef NVIM_EVAL_FUNCS_H +#define NVIM_EVAL_FUNCS_H + +#include "nvim/buffer_defs.h" +#include "nvim/eval/typval.h" + +typedef void (*FunPtr)(void); + +/// Prototype of C function that implements VimL function +typedef void (*VimLFunc)(typval_T *args, typval_T *rvar, FunPtr data); + +/// Structure holding VimL function definition +typedef struct fst { + char *name; ///< Name of the function. + uint8_t min_argc; ///< Minimal number of arguments. + uint8_t max_argc; ///< Maximal number of arguments. + VimLFunc func; ///< Function implementation. + FunPtr data; ///< Userdata for function implementation. +} VimLFuncDef; + +#ifdef INCLUDE_GENERATED_DECLARATIONS +# include "eval/funcs.h.generated.h" +#endif +#endif // NVIM_EVAL_FUNCS_H |