static void set_uint16(Object *obj, Visitor *v, void *opaque, const char *name, Error **errp) { DeviceState *dev = DEVICE(obj); Property *prop = opaque; uint16_t *ptr = qdev_get_prop_ptr(dev, prop); if (dev->realized) { error_set(errp, QERR_PERMISSION_DENIED); return; } visit_type_uint16(v, ptr, name, errp); }
static void set_uint16(Object *obj, Visitor *v, const char *name, void *opaque, Error **errp) { DeviceState *dev = DEVICE(obj); Property *prop = opaque; uint16_t *ptr = qdev_get_prop_ptr(dev, prop); if (dev->realized) { qdev_prop_set_after_realize(dev, name, errp); return; } visit_type_uint16(v, name, ptr, errp); }
static void visit_primitive_type(Visitor *v, void **native, Error **errp) { PrimitiveType *pt = *native; switch(pt->type) { case PTYPE_STRING: visit_type_str(v, NULL, (char **)&pt->value.string, errp); break; case PTYPE_BOOLEAN: visit_type_bool(v, NULL, &pt->value.boolean, errp); break; case PTYPE_NUMBER: visit_type_number(v, NULL, &pt->value.number, errp); break; case PTYPE_INTEGER: visit_type_int(v, NULL, &pt->value.integer, errp); break; case PTYPE_U8: visit_type_uint8(v, NULL, &pt->value.u8, errp); break; case PTYPE_U16: visit_type_uint16(v, NULL, &pt->value.u16, errp); break; case PTYPE_U32: visit_type_uint32(v, NULL, &pt->value.u32, errp); break; case PTYPE_U64: visit_type_uint64(v, NULL, &pt->value.u64, errp); break; case PTYPE_S8: visit_type_int8(v, NULL, &pt->value.s8, errp); break; case PTYPE_S16: visit_type_int16(v, NULL, &pt->value.s16, errp); break; case PTYPE_S32: visit_type_int32(v, NULL, &pt->value.s32, errp); break; case PTYPE_S64: visit_type_int64(v, NULL, &pt->value.s64, errp); break; case PTYPE_EOL: g_assert_not_reached(); } }