Added simple offset-based accessors for defs, and deprecated old iterators.
diff --git a/upb/json_encode.c b/upb/json_encode.c
index 6b6d99b..8338b4d 100644
--- a/upb/json_encode.c
+++ b/upb/json_encode.c
@@ -648,10 +648,10 @@
if (e->options & UPB_JSONENC_EMITDEFAULTS) {
/* Iterate over all fields. */
- upb_msg_field_iter i;
- for (upb_msg_field_begin(&i, m); !upb_msg_field_done(&i);
- upb_msg_field_next(&i)) {
- f = upb_msg_iter_field(&i);
+ int i = 0;
+ int n = upb_msgdef_fieldcount(m);
+ for (i = 0; i < n; i++) {
+ f = upb_msgdef_field(m, i);
jsonenc_fieldval(e, f, upb_msg_get(msg, f), &first);
}
} else {