mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 9.0.1890: Vim9: lookup code for class/object repaeated
Problem: Vim9: lookup code for class/object repaeated Solution: Refactor and make use of lookup functions closes: #13067 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
This commit is contained in:
committed by
Christian Brabandt
parent
0661033075
commit
f36bbcd402
@@ -2166,26 +2166,20 @@ execute_storeindex(isn_T *iptr, ectx_T *ectx)
|
||||
class_T *cl = obj->obj_class;
|
||||
char_u *member = tv_idx->vval.v_string;
|
||||
|
||||
ocmember_T *m = NULL;
|
||||
for (int i = 0; i < cl->class_obj_member_count; ++i)
|
||||
int m_idx;
|
||||
ocmember_T *m = object_member_lookup(cl, member, 0, &m_idx);
|
||||
if (m != NULL)
|
||||
{
|
||||
m = &cl->class_obj_members[i];
|
||||
if (STRCMP(member, m->ocm_name) == 0)
|
||||
if (*member == '_')
|
||||
{
|
||||
if (*member == '_')
|
||||
{
|
||||
semsg(_(e_cannot_access_private_member_str),
|
||||
m->ocm_name);
|
||||
status = FAIL;
|
||||
}
|
||||
|
||||
lidx = i;
|
||||
break;
|
||||
semsg(_(e_cannot_access_private_member_str),
|
||||
m->ocm_name);
|
||||
status = FAIL;
|
||||
}
|
||||
m = NULL;
|
||||
}
|
||||
|
||||
if (m == NULL)
|
||||
lidx = m_idx;
|
||||
}
|
||||
else
|
||||
{
|
||||
semsg(_(e_member_not_found_on_object_str_str),
|
||||
cl->class_name, member);
|
||||
|
Reference in New Issue
Block a user