static int ref_obj_func_getobj (struct instance *o, const char *name, NCDObject *out_object) { if (!o->crh) { return 0; } return NCDModuleInst_Backend_GetObj(o->crh->i, name, out_object); }
static int func_getobj (void *vo, NCD_string_id_t name, NCDObject *out_object) { struct instance *o = vo; ASSERT(o->num_names > 0) NCD_string_id_t *names = AliasNames_GetNames(o); NCDObject object; if (!NCDModuleInst_Backend_GetObj(o->i, names[0], &object)) { return 0; } NCDObject obj2; if (!NCDObject_ResolveObjExprCompact(&object, names + 1, o->num_names - 1, &obj2)) { return 0; } if (name == NCD_STRING_EMPTY) { *out_object = obj2; return 1; } return NCDObject_GetObj(&obj2, name, out_object); }
static int caller_obj_func_getobj (struct instance *o, const char *name, NCDObject *out_object) { return NCDModuleInst_Backend_GetObj(o->i, name, out_object); }