summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2022-06-10 13:35:42 +1000
committerDamien George <damien@micropython.org>2022-06-10 16:42:43 +1000
commit0e556f22a22ff26cedcacf08a2e273e916b76c30 (patch)
tree40101ab72cb948b69138094e9ccb17aa3b8c2492
parent148d12252b54d330c66ccac4bbbe6d804a8d1e8f (diff)
py/dynruntime: Add macros to access more types and mp_const_empty_bytes.
Signed-off-by: Damien George <damien@micropython.org>
-rw-r--r--py/dynruntime.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/py/dynruntime.h b/py/dynruntime.h
index 9205cfd21..e3200a271 100644
--- a/py/dynruntime.h
+++ b/py/dynruntime.h
@@ -44,6 +44,7 @@
#undef mp_const_none
#undef mp_const_false
#undef mp_const_true
+#undef mp_const_empty_bytes
#undef mp_const_empty_tuple
#undef nlr_raise
@@ -81,7 +82,11 @@ static inline void *m_realloc_dyn(void *ptr, size_t new_num_bytes) {
#define MP_OBJ_NEW_QSTR(x) MP_OBJ_NEW_QSTR_##x
#define mp_type_type (*mp_fun_table.type_type)
+#define mp_type_NoneType (*mp_obj_get_type(mp_const_none))
+#define mp_type_bool (*mp_obj_get_type(mp_const_false))
+#define mp_type_int (*(mp_obj_type_t *)(mp_load_global(MP_QSTR_int)))
#define mp_type_str (*mp_fun_table.type_str)
+#define mp_type_bytes (*(mp_obj_type_t *)(mp_load_global(MP_QSTR_bytes)))
#define mp_type_tuple (*((mp_obj_base_t *)mp_const_empty_tuple)->type)
#define mp_type_list (*mp_fun_table.type_list)
#define mp_type_EOFError (*(mp_obj_type_t *)(mp_load_global(MP_QSTR_EOFError)))
@@ -100,6 +105,7 @@ static inline void *m_realloc_dyn(void *ptr, size_t new_num_bytes) {
#define mp_const_none ((mp_obj_t)mp_fun_table.const_none)
#define mp_const_false ((mp_obj_t)mp_fun_table.const_false)
#define mp_const_true ((mp_obj_t)mp_fun_table.const_true)
+#define mp_const_empty_bytes (mp_type_bytes.make_new(NULL, 0, 0, NULL))
#define mp_const_empty_tuple (mp_fun_table.new_tuple(0, NULL))
#define mp_obj_new_bool(b) ((b) ? (mp_obj_t)mp_fun_table.const_true : (mp_obj_t)mp_fun_table.const_false)