blob: 4f2fffe686f84969f8a746c904ea80a2a5f5b96d [file] [log] [blame]
Bram Moolenaar8a7d6542020-01-26 15:56:19 +01001/* vim9compile.c */
Bram Moolenaarb4893b82021-02-21 22:20:24 +01002int script_var_exists(char_u *name, size_t len, int vim9script, cctx_T *cctx);
Bram Moolenaar057e84a2021-02-28 16:55:11 +01003int check_defined(char_u *p, size_t len, cctx_T *cctx, int is_arg);
Bram Moolenaar657137c2021-01-09 15:45:23 +01004int check_compare_types(exprtype_T type, typval_T *tv1, typval_T *tv2);
Bram Moolenaar193f6202020-11-16 20:08:35 +01005int use_typecheck(type_T *actual, type_T *expected);
Bram Moolenaar351ead02021-01-16 16:07:01 +01006int need_type(type_T *actual, type_T *expected, int offset, int arg_idx, cctx_T *cctx, int silent, int actual_is_const);
Bram Moolenaarb2049902021-01-24 12:53:53 +01007int func_needs_compiling(ufunc_T *ufunc, int profile);
Bram Moolenaarfbbcd002020-10-15 12:46:44 +02008int get_script_item_idx(int sid, char_u *name, int check_writable, cctx_T *cctx);
Bram Moolenaar4e12a5d2020-02-03 20:50:59 +01009imported_T *find_imported(char_u *name, size_t len, cctx_T *cctx);
Bram Moolenaarefa94442020-08-08 22:16:00 +020010imported_T *find_imported_in_script(char_u *name, size_t len, int sid);
Bram Moolenaar7a4b8982020-07-08 17:36:21 +020011char_u *peek_next_line_from_context(cctx_T *cctx);
12char_u *next_line_from_context(cctx_T *cctx, int skip_comment);
Bram Moolenaarbebaa0d2020-11-20 18:59:19 +010013char_u *to_name_end(char_u *arg, int use_namespace);
Bram Moolenaar8a7d6542020-01-26 15:56:19 +010014char_u *to_name_const_end(char_u *arg);
Bram Moolenaar657137c2021-01-09 15:45:23 +010015exprtype_T get_compare_type(char_u *p, int *len, int *type_is);
Bram Moolenaarbb1b5e22020-08-05 10:53:21 +020016void error_white_both(char_u *op, int len);
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 Moolenaarb2049902021-01-24 12:53:53 +010020int compile_def_function(ufunc_T *ufunc, int check_return_type, int profiling, cctx_T *outer_cctx);
Bram Moolenaar6ff71d82020-05-24 23:45:24 +020021void set_function_type(ufunc_T *ufunc);
Bram Moolenaar20431c92020-03-20 18:39:46 +010022void delete_instr(isn_T *isn);
Bram Moolenaarfdeab652020-09-19 15:16:50 +020023void unlink_def_function(ufunc_T *ufunc);
Bram Moolenaarcd45ed02020-12-22 17:35:54 +010024void link_def_function(ufunc_T *ufunc);
Bram Moolenaar8a7d6542020-01-26 15:56:19 +010025void free_def_functions(void);
26/* vim: set ft=c : */