forked from aniani/vim
patch 9.0.1254: calling a method on an interface does not work
Problem: Calling a method on an interface does not work. Solution: At runtime figure out what method to call. (closes #11901)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/* vim9class.c */
|
||||
int object_index_from_itf_index(class_T *itf, int idx, class_T *cl);
|
||||
int object_index_from_itf_index(class_T *itf, int is_method, int idx, class_T *cl);
|
||||
void ex_class(exarg_T *eap);
|
||||
type_T *class_member_type(class_T *cl, char_u *name, char_u *name_end, int *member_idx);
|
||||
void ex_enum(exarg_T *eap);
|
||||
|
||||
@@ -57,7 +57,7 @@ int check_internal_func_args(cctx_T *cctx, int func_idx, int argcount, int metho
|
||||
int generate_BCALL(cctx_T *cctx, int func_idx, int argcount, int method_call);
|
||||
int generate_LISTAPPEND(cctx_T *cctx);
|
||||
int generate_BLOBAPPEND(cctx_T *cctx);
|
||||
int generate_CALL(cctx_T *cctx, ufunc_T *ufunc, int pushed_argcount);
|
||||
int generate_CALL(cctx_T *cctx, ufunc_T *ufunc, class_T *cl, int mi, int pushed_argcount);
|
||||
int generate_UCALL(cctx_T *cctx, char_u *name, int argcount);
|
||||
int check_func_args_from_type(cctx_T *cctx, type_T *type, int argcount, int at_top, char_u *name);
|
||||
int generate_PCALL(cctx_T *cctx, int argcount, char_u *name, type_T *type, int at_top);
|
||||
|
||||
Reference in New Issue
Block a user