Lines Matching refs:type
268 type_T **type, in arg_exists() argument
292 *type = cctx->ctx_ufunc->uf_arg_types[idx]; in arg_exists()
294 *type = &t_any; in arg_exists()
308 *type = cctx->ctx_ufunc->uf_va_type; in arg_exists()
316 if (arg_exists(name, len, idxp, type, gen_load_outer, cctx->ctx_outer) in arg_exists()
580 generate_instr_type(cctx_T *cctx, isntype_T isn_type, type_T *type) in generate_instr_type() argument
590 ((type_T **)stack->ga_data)[stack->ga_len] = type == NULL ? &t_any : type; in generate_instr_type()
624 type_T **type; in may_generate_2STRING() local
627 type = ((type_T **)stack->ga_data) + stack->ga_len + offset; in may_generate_2STRING()
628 switch ((*type)->tt_type) in may_generate_2STRING()
664 to_string_error((*type)->tt_type); in may_generate_2STRING()
668 *type = &t_string; in may_generate_2STRING()
822 type_T *type = &t_any; in generate_two_op() local
828 type = &t_float; in generate_two_op()
830 ((type_T **)stack->ga_data)[stack->ga_len - 1] = type; in generate_two_op()
898 check_compare_types(exprtype_T type, typval_T *tv1, typval_T *tv2) in check_compare_types() argument
900 if (get_compare_isn(type, tv1->v_type, tv2->v_type) == ISN_DROP) in check_compare_types()
997 isn->isn_arg.type.ct_type = alloc_type(expected); in generate_TYPECHECK()
998 isn->isn_arg.type.ct_off = (int8_T)offset; in generate_TYPECHECK()
999 isn->isn_arg.type.ct_arg_idx = (int8_T)argidx; in generate_TYPECHECK()
1017 isn->isn_arg.type.ct_type = alloc_type(expected); in generate_SETTYPE()
1113 type_T *type; in bool_on_stack() local
1115 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in bool_on_stack()
1116 if (type == &t_bool) in bool_on_stack()
1119 if (type == &t_any || type == &t_number || type == &t_number_bool) in bool_on_stack()
1124 return need_type(type, &t_bool, -1, 0, cctx, FALSE, FALSE); in bool_on_stack()
1279 generate_PUSHFUNC(cctx_T *cctx, char_u *name, type_T *type) in generate_PUSHFUNC() argument
1284 if ((isn = generate_instr_type(cctx, ISN_PUSHFUNC, type)) == NULL) in generate_PUSHFUNC()
1301 type_T *type = ((type_T **)stack->ga_data)[stack->ga_len in generate_GETITEM() local
1307 if (type->tt_type != VAR_LIST) in generate_GETITEM()
1313 item_type = type->tt_member; in generate_GETITEM()
1439 type_T *type) in generate_LOAD() argument
1444 if ((isn = generate_instr_type(cctx, isn_type, type)) == NULL) in generate_LOAD()
1462 type_T *type) in generate_LOADOUTER() argument
1467 if ((isn = generate_instr_type(cctx, ISN_LOADOUTER, type)) == NULL) in generate_LOADOUTER()
1486 type_T *type; in generate_LOADV() local
1495 type = typval2type_vimvar(get_vim_var_tv(vidx), cctx->ctx_type_list); in generate_LOADV()
1497 return generate_LOAD(cctx, ISN_LOADV, vidx, NULL, type); in generate_LOADV()
1540 type_T *type) in generate_OLDSCRIPT() argument
1546 isn = generate_instr_type(cctx, isn_type, type); in generate_OLDSCRIPT()
1566 type_T *type) in generate_VIM9SCRIPT() argument
1574 isn = generate_instr_type(cctx, isn_type, type); in generate_VIM9SCRIPT()
1589 sref->sref_type = type; in generate_VIM9SCRIPT()
1601 type_T *type; in generate_NEWLIST() local
1616 type = get_list_type(member, cctx->ctx_type_list); in generate_NEWLIST()
1624 ((type_T **)stack->ga_data)[stack->ga_len] = type; in generate_NEWLIST()
1638 type_T *type; in generate_NEWDICT() local
1652 type = get_dict_type(member, cctx->ctx_type_list); in generate_NEWDICT()
1660 ((type_T **)stack->ga_data)[stack->ga_len] = type; in generate_NEWDICT()
2106 type_T *type, in generate_PCALL() argument
2115 if (type->tt_type == VAR_ANY) in generate_PCALL()
2117 else if (type->tt_type == VAR_FUNC || type->tt_type == VAR_PARTIAL) in generate_PCALL()
2119 if (type->tt_argcount != -1) in generate_PCALL()
2121 int varargs = (type->tt_flags & TTFLAG_VARARGS) ? 1 : 0; in generate_PCALL()
2123 if (argcount < type->tt_min_argcount - varargs) in generate_PCALL()
2128 if (!varargs && argcount > type->tt_argcount) in generate_PCALL()
2133 if (type->tt_args != NULL) in generate_PCALL()
2144 if (varargs && i >= type->tt_argcount - 1) in generate_PCALL()
2145 expected = type->tt_args[ in generate_PCALL()
2146 type->tt_argcount - 1]->tt_member; in generate_PCALL()
2147 else if (i >= type->tt_min_argcount in generate_PCALL()
2151 expected = type->tt_args[i]; in generate_PCALL()
2161 ret_type = type->tt_member; in generate_PCALL()
2198 type_T *type; in generate_STRINGMEMBER() local
2206 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in generate_STRINGMEMBER()
2207 if (type->tt_type != VAR_DICT && type != &t_any) in generate_STRINGMEMBER()
2212 name, type_name(type, &tofree)); in generate_STRINGMEMBER()
2217 if (type->tt_type == VAR_DICT) in generate_STRINGMEMBER()
2220 type->tt_member == &t_unknown ? &t_any : type->tt_member; in generate_STRINGMEMBER()
2452 type_T *type) in reserve_local() argument
2477 lvar->lv_type = type; in reserve_local()
3042 type_T *type; in compile_load_scriptvar() local
3064 idx = find_exported(import->imp_sid, exp_name, &ufunc, &type, in compile_load_scriptvar()
3083 type); in compile_load_scriptvar()
3130 type_T *type; in compile_load() local
3226 else if (arg_exists(*arg, len, &idx, &type, &gen_load_outer, cctx) in compile_load()
3238 type = lvar.lv_type; in compile_load()
3261 res = generate_LOAD(cctx, ISN_LOAD, idx, NULL, type); in compile_load()
3264 res = generate_LOADOUTER(cctx, idx, gen_load_outer, type); in compile_load()
3511 type_T *type = ((type_T **)stack->ga_data)[ in compile_call() local
3515 if (type->tt_type == VAR_LIST) in compile_call()
3521 else if (type->tt_type == VAR_BLOB) in compile_call()
3560 type_T *type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_call() local
3562 res = generate_PCALL(cctx, argcount, namebuf, type, FALSE); in compile_call()
3993 type_T *type = rettv.v_type == VAR_BOOL ? &t_bool in compile_get_option() local
3996 ret = generate_LOAD(cctx, ISN_LOADOPT, 0, name, type); in compile_get_option()
4150 exprtype_T type = EXPR_UNKNOWN; in get_compare_type() local
4156 type = EXPR_EQUAL; in get_compare_type()
4158 type = EXPR_MATCH; in get_compare_type()
4161 type = EXPR_NEQUAL; in get_compare_type()
4163 type = EXPR_NOMATCH; in get_compare_type()
4167 type = EXPR_GREATER; in get_compare_type()
4171 type = EXPR_GEQUAL; in get_compare_type()
4175 type = EXPR_SMALLER; in get_compare_type()
4179 type = EXPR_SEQUAL; in get_compare_type()
4189 type = *len == 2 ? EXPR_IS : EXPR_ISNOT; in get_compare_type()
4195 return type; in get_compare_type()
4232 type_T *type; in compile_leader() local
4234 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_leader()
4235 if (need_type(type, &t_number, -1, 0, cctx, FALSE, FALSE) == FAIL) in compile_leader()
4355 type_T *type; in compile_subscript() local
4363 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_subscript()
4368 if (generate_PCALL(cctx, argcount, name_start, type, TRUE) == FAIL) in compile_subscript()
4399 type_T *type; in compile_subscript() local
4453 type = ((type_T **)stack->ga_data)[type_idx_start]; in compile_subscript()
4458 ((type_T **)stack->ga_data)[stack->ga_len - 1] = type; in compile_subscript()
4461 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_subscript()
4462 if (generate_PCALL(cctx, argcount, p - 2, type, FALSE) == FAIL) in compile_subscript()
5141 exprtype_T type = EXPR_UNKNOWN; in compile_expr4() local
5153 type = get_compare_type(p, &len, &type_is); in compile_expr4()
5158 if (type != EXPR_UNKNOWN) in compile_expr4()
5205 if (check_compare_types(type, tv1, tv2) == FAIL) in compile_expr4()
5209 ret = typval_compare(tv1, tv2, type, ic); in compile_expr4()
5220 return generate_COMPARE(cctx, type, ic); in compile_expr4()
5946 type_T *type) in generate_loadvar() argument
5951 generate_LOAD(cctx, ISN_LOADOPT, 0, name, type); in generate_loadvar()
5955 generate_LOAD(cctx, ISN_LOADG, 0, name + 2, type); in generate_loadvar()
5957 generate_LOAD(cctx, ISN_LOADAUTO, 0, name, type); in generate_loadvar()
5960 generate_LOAD(cctx, ISN_LOADB, 0, name + 2, type); in generate_loadvar()
5963 generate_LOAD(cctx, ISN_LOADW, 0, name + 2, type); in generate_loadvar()
5966 generate_LOAD(cctx, ISN_LOADT, 0, name + 2, type); in generate_loadvar()
5974 generate_LOAD(cctx, ISN_LOADENV, 0, name, type); in generate_loadvar()
5985 type); in generate_loadvar()
5987 generate_LOAD(cctx, ISN_LOAD, lvar->lv_idx, NULL, type); in generate_loadvar()
6055 type_T **type, in get_var_dest() argument
6092 *type = &t_string; in get_var_dest()
6096 *type = &t_bool; in get_var_dest()
6100 *type = &t_number; in get_var_dest()
6107 *type = &t_string; in get_var_dest()
6118 *type = name[1] == '#' ? &t_number_or_string : &t_string; in get_var_dest()
6152 *type = typval2type_vimvar(vtv, cctx->ctx_type_list); in get_var_dest()
6169 type_T *type, in generate_store_var() argument
6201 scriptvar_sid, type); in generate_store_var()
6203 scriptvar_sid, scriptvar_idx, type); in generate_store_var()
6800 type_T *type; in compile_assign_unlet() local
6804 type = ((type_T **)stack->ga_data)[stack->ga_len - 2]; in compile_assign_unlet()
6805 if (need_type(type, &t_number, in compile_assign_unlet()
6809 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_assign_unlet()
6810 if ((dest_type != VAR_BLOB && type != &t_special) in compile_assign_unlet()
6811 && need_type(type, &t_number, in compile_assign_unlet()
7637 new_scope(cctx_T *cctx, scopetype_T type) in new_scope() argument
7645 scope->se_type = type; in new_scope()
8225 type_T *type = &t_any; in compile_for() local
8242 &vimvaridx, &type, cctx) == FAIL) in compile_for()
8247 0, 0, type, name) == FAIL) in compile_for()
8964 type_T *type; in compile_mult_expr() local
8977 type = ((type_T **)stack->ga_data)[stack->ga_len - 1]; in compile_mult_expr()
8978 if (type->tt_type == VAR_VOID) in compile_mult_expr()
10481 free_type(isn->isn_arg.type.ct_type); in delete_instr()