summaryrefslogtreecommitdiffstatshomepage
path: root/py/objarray.c
diff options
context:
space:
mode:
authorJim Mussared <jim.mussared@gmail.com>2021-07-14 14:38:38 +1000
committerDamien George <damien@micropython.org>2022-09-19 19:06:01 +1000
commit662b9761b37b054f08fe2f7c00d0fce3a418d0b0 (patch)
tree3ab168faeb26685d511bf47caa21d2eabdd86c69 /py/objarray.c
parentcdb880789f61ee037cc7905ad75a7a9201d12ba5 (diff)
downloadmicropython-662b9761b37b054f08fe2f7c00d0fce3a418d0b0.tar.gz
micropython-662b9761b37b054f08fe2f7c00d0fce3a418d0b0.zip
all: Make all mp_obj_type_t defs use MP_DEFINE_CONST_OBJ_TYPE.
In preparation for upcoming rework of mp_obj_type_t layout. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
Diffstat (limited to 'py/objarray.c')
-rw-r--r--py/objarray.c87
1 files changed, 45 insertions, 42 deletions
diff --git a/py/objarray.c b/py/objarray.c
index dca41c2931..d93cce29ee 100644
--- a/py/objarray.c
+++ b/py/objarray.c
@@ -571,54 +571,55 @@ STATIC mp_int_t array_get_buffer(mp_obj_t o_in, mp_buffer_info_t *bufinfo, mp_ui
}
#if MICROPY_PY_ARRAY
-const mp_obj_type_t mp_type_array = {
- { &mp_type_type },
- .name = MP_QSTR_array,
- .print = array_print,
- .make_new = array_make_new,
- .getiter = array_iterator_new,
- .unary_op = array_unary_op,
- .binary_op = array_binary_op,
- .subscr = array_subscr,
- .buffer_p = array_get_buffer,
- .locals_dict = (mp_obj_dict_t *)&mp_obj_array_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_array,
+ MP_QSTR_array,
+ MP_TYPE_FLAG_NONE,
+ array_make_new,
+ print, array_print,
+ getiter, array_iterator_new,
+ unary_op, array_unary_op,
+ binary_op, array_binary_op,
+ subscr, array_subscr,
+ buffer, array_get_buffer,
+ locals_dict, (mp_obj_dict_t *)&mp_obj_array_locals_dict
+ );
#endif
#if MICROPY_PY_BUILTINS_BYTEARRAY
-const mp_obj_type_t mp_type_bytearray = {
- { &mp_type_type },
- .flags = MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE,
- .name = MP_QSTR_bytearray,
- .print = array_print,
- .make_new = bytearray_make_new,
- .getiter = array_iterator_new,
- .unary_op = array_unary_op,
- .binary_op = array_binary_op,
- .subscr = array_subscr,
- .buffer = array_get_buffer,
- .locals_dict = (mp_obj_dict_t *)&mp_obj_bytearray_locals_dict,
-};
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_bytearray,
+ MP_QSTR_bytearray,
+ MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE,
+ bytearray_make_new,
+ print, array_print,
+ getiter, array_iterator_new,
+ unary_op, array_unary_op,
+ binary_op, array_binary_op,
+ subscr, array_subscr,
+ buffer, array_get_buffer,
+ locals_dict, (mp_obj_dict_t *)&mp_obj_bytearray_locals_dict
+ );
#endif
#if MICROPY_PY_BUILTINS_MEMORYVIEW
-const mp_obj_type_t mp_type_memoryview = {
- { &mp_type_type },
- .flags = MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE,
- .name = MP_QSTR_memoryview,
- .make_new = memoryview_make_new,
- .getiter = array_iterator_new,
- .unary_op = array_unary_op,
- .binary_op = array_binary_op,
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_memoryview,
+ MP_QSTR_memoryview,
+ MP_TYPE_FLAG_EQ_CHECKS_OTHER_TYPE,
+ memoryview_make_new,
+ getiter, array_iterator_new,
+ unary_op, array_unary_op,
+ binary_op, array_binary_op,
#if MICROPY_PY_BUILTINS_MEMORYVIEW_ITEMSIZE
- .attr = memoryview_attr,
+ attr, memoryview_attr,
#endif
#if MICROPY_PY_BUILTINS_BYTES_HEX
- .locals_dict = (mp_obj_dict_t *)&mp_obj_memoryview_locals_dict,
+ locals_dict, (mp_obj_dict_t *)&mp_obj_memoryview_locals_dict,
#endif
.subscr = array_subscr,
.buffer = array_get_buffer,
-};
+ );
#endif
/* unused
@@ -664,12 +665,14 @@ STATIC mp_obj_t array_it_iternext(mp_obj_t self_in) {
}
}
-STATIC const mp_obj_type_t mp_type_array_it = {
- { &mp_type_type },
- .name = MP_QSTR_iterator,
- .getiter = mp_identity_getiter,
- .iternext = array_it_iternext,
-};
+STATIC MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_array_it,
+ MP_QSTR_iterator,
+ MP_TYPE_FLAG_NONE,
+ MP_TYPE_NULL_MAKE_NEW,
+ getiter, mp_identity_getiter,
+ iternext, array_it_iternext
+ );
STATIC mp_obj_t array_iterator_new(mp_obj_t array_in, mp_obj_iter_buf_t *iter_buf) {
assert(sizeof(mp_obj_array_t) <= sizeof(mp_obj_iter_buf_t));