summaryrefslogtreecommitdiff
path: root/py/objclosure.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/objclosure.c
parentcdb880789f61ee037cc7905ad75a7a9201d12ba5 (diff)
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/objclosure.c')
-rw-r--r--py/objclosure.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/py/objclosure.c b/py/objclosure.c
index 5b9923a44..15ed994d3 100644
--- a/py/objclosure.c
+++ b/py/objclosure.c
@@ -86,18 +86,19 @@ STATIC void mp_obj_closure_attr(mp_obj_t self_in, qstr attr, mp_obj_t *dest) {
}
#endif
-const mp_obj_type_t mp_type_closure = {
- { &mp_type_type },
- .flags = MP_TYPE_FLAG_BINDS_SELF,
- .name = MP_QSTR_closure,
+MP_DEFINE_CONST_OBJ_TYPE(
+ mp_type_closure,
+ MP_QSTR_closure,
+ MP_TYPE_FLAG_BINDS_SELF,
+ MP_TYPE_NULL_MAKE_NEW,
#if MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_DETAILED
- .print = closure_print,
+ print, closure_print,
#endif
- .call = closure_call,
#if MICROPY_PY_FUNCTION_ATTRS
- .attr = mp_obj_closure_attr,
+ attr, mp_obj_closure_attr,
#endif
-};
+ call, closure_call
+ );
mp_obj_t mp_obj_new_closure(mp_obj_t fun, size_t n_closed_over, const mp_obj_t *closed) {
mp_obj_closure_t *o = mp_obj_malloc_var(mp_obj_closure_t, mp_obj_t, n_closed_over, &mp_type_closure);