blob: 5910c67d6c78dbf6db9817e04bf6add7206fa4a1 [file] [log] [blame]
Bram Moolenaar8a7d6542020-01-26 15:56:19 +01001/* vim9compile.c */
Bram Moolenaar057e84a2021-02-28 16:55:11 +01002int check_defined(char_u *p, size_t len, cctx_T *cctx, int is_arg);
Bram Moolenaar657137c2021-01-09 15:45:23 +01003int check_compare_types(exprtype_T type, typval_T *tv1, typval_T *tv2);
Bram Moolenaar351ead02021-01-16 16:07:01 +01004int need_type(type_T *actual, type_T *expected, int offset, int arg_idx, cctx_T *cctx, int silent, int actual_is_const);
Bram Moolenaare99d4222021-06-13 14:01:26 +02005int func_needs_compiling(ufunc_T *ufunc, compiletype_T compile_type);
Bram Moolenaarfbbcd002020-10-15 12:46:44 +02006int get_script_item_idx(int sid, char_u *name, int check_writable, cctx_T *cctx);
Bram Moolenaar4e12a5d2020-02-03 20:50:59 +01007imported_T *find_imported(char_u *name, size_t len, cctx_T *cctx);
Bram Moolenaarefa94442020-08-08 22:16:00 +02008imported_T *find_imported_in_script(char_u *name, size_t len, int sid);
Bram Moolenaar7a4b8982020-07-08 17:36:21 +02009char_u *peek_next_line_from_context(cctx_T *cctx);
10char_u *next_line_from_context(cctx_T *cctx, int skip_comment);
Bram Moolenaarbf5f2872021-08-21 20:50:35 +020011char_u *to_name_end(char_u *arg, int use_namespace);
Bram Moolenaar8a7d6542020-01-26 15:56:19 +010012char_u *to_name_const_end(char_u *arg);
Bram Moolenaar9bb0dad2021-07-19 22:19:29 +020013int get_lambda_tv_and_compile(char_u **arg, typval_T *rettv, int types_optional, evalarg_T *evalarg);
Bram Moolenaar657137c2021-01-09 15:45:23 +010014exprtype_T get_compare_type(char_u *p, int *len, int *type_is);
Bram Moolenaarbb1b5e22020-08-05 10:53:21 +020015void error_white_both(char_u *op, int len);
Bram Moolenaar7a6eaa02021-03-21 20:53:29 +010016void fill_exarg_from_cctx(exarg_T *eap, cctx_T *cctx);
Bram Moolenaar8a7d6542020-01-26 15:56:19 +010017int assignment_len(char_u *p, int *heredoc);
Bram Moolenaare55b1c02020-06-21 15:52:59 +020018void vim9_declare_error(char_u *name);
Bram Moolenaard72c1bf2020-04-19 16:28:59 +020019int check_vim9_unlet(char_u *name);
Bram Moolenaar7b829262021-10-13 15:04:34 +010020int check_global_and_subst(char_u *cmd, char_u *arg);
Bram Moolenaare99d4222021-06-13 14:01:26 +020021int compile_def_function(ufunc_T *ufunc, int check_return_type, compiletype_T compile_type, cctx_T *outer_cctx);
Bram Moolenaar6ff71d82020-05-24 23:45:24 +020022void set_function_type(ufunc_T *ufunc);
Bram Moolenaar20431c92020-03-20 18:39:46 +010023void delete_instr(isn_T *isn);
Bram Moolenaarfdeab652020-09-19 15:16:50 +020024void unlink_def_function(ufunc_T *ufunc);
Bram Moolenaarcd45ed02020-12-22 17:35:54 +010025void link_def_function(ufunc_T *ufunc);
Bram Moolenaar8a7d6542020-01-26 15:56:19 +010026void free_def_functions(void);
27/* vim: set ft=c : */