id_stack, modifiable ui for struct based on type info!
This commit is contained in:
@@ -52,6 +52,23 @@ fn void ti_enum_write_value(void *p, i64 value, type_t *type) {
|
||||
}
|
||||
}
|
||||
|
||||
fn i64 ti_enum_next_value(void *p, i64 value, type_t *type) {
|
||||
assert(type->kind == type_kind_enum);
|
||||
i32 next_i = 0;
|
||||
for (i32 i = 0; i < type->count; i += 1) {
|
||||
type_member_t *it = type->members + i;
|
||||
if (value == it->value) {
|
||||
if (i + 1 < type->count) {
|
||||
next_i = i + 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
type_member_t *tm = type->members + next_i;
|
||||
return tm->value;
|
||||
}
|
||||
|
||||
fn type_member_t *ti_get_member(s8_t name, type_t *type) {
|
||||
for (i32 i = 0; i < type->count; i += 1) {
|
||||
type_member_t *it = type->members + i;
|
||||
|
||||
Reference in New Issue
Block a user