1/* vim9compile.c */ 2int check_defined(char_u *p, size_t len, cctx_T *cctx); 3void clear_type_list(garray_T *gap); 4type_T *typval2type(typval_T *tv, garray_T *type_gap); 5type_T *typval2type_vimvar(typval_T *tv, garray_T *type_gap); 6int check_typval_type(type_T *expected, typval_T *actual_tv); 7int check_type(type_T *expected, type_T *actual, int give_msg); 8int check_compare_types(exptype_T type, typval_T *tv1, typval_T *tv2); 9char_u *skip_type(char_u *start, int optional); 10type_T *parse_type(char_u **arg, garray_T *type_gap); 11char *vartype_name(vartype_T type); 12char *type_name(type_T *type, char **tofree); 13int get_script_item_idx(int sid, char_u *name, int check_writable); 14imported_T *find_imported(char_u *name, size_t len, cctx_T *cctx); 15int vim9_comment_start(char_u *p); 16char_u *peek_next_line_from_context(cctx_T *cctx); 17char_u *next_line_from_context(cctx_T *cctx, int skip_comment); 18char_u *to_name_const_end(char_u *arg); 19exptype_T get_compare_type(char_u *p, int *len, int *type_is); 20int assignment_len(char_u *p, int *heredoc); 21void vim9_declare_error(char_u *name); 22int check_vim9_unlet(char_u *name); 23int compile_def_function(ufunc_T *ufunc, int set_return_type, cctx_T *outer_cctx); 24void set_function_type(ufunc_T *ufunc); 25void delete_instr(isn_T *isn); 26void clear_def_function(ufunc_T *ufunc); 27void free_def_functions(void); 28/* vim: set ft=c : */ 29