Пример #1
0
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);
}
Пример #2
0
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);
}
Пример #3
0
static int caller_obj_func_getobj (struct instance *o, const char *name, NCDObject *out_object)
{
    return NCDModuleInst_Backend_GetObj(o->i, name, out_object);
}