py: Add MICROPY_PY_BUILTINS_REVERSED, disable for minimal ports.
diff --git a/py/modbuiltins.c b/py/modbuiltins.c
index da97cb9..0985e25 100644
--- a/py/modbuiltins.c
+++ b/py/modbuiltins.c
@@ -615,7 +615,9 @@
{ MP_OBJ_NEW_QSTR(MP_QSTR_property), (mp_obj_t)&mp_type_property },
#endif
{ MP_OBJ_NEW_QSTR(MP_QSTR_range), (mp_obj_t)&mp_type_range },
+ #if MICROPY_PY_BUILTINS_REVERSED
{ MP_OBJ_NEW_QSTR(MP_QSTR_reversed), (mp_obj_t)&mp_type_reversed },
+ #endif
#if MICROPY_PY_BUILTINS_SET
{ MP_OBJ_NEW_QSTR(MP_QSTR_set), (mp_obj_t)&mp_type_set },
#endif
diff --git a/py/mpconfig.h b/py/mpconfig.h
index 4065c68..824ef76 100644
--- a/py/mpconfig.h
+++ b/py/mpconfig.h
@@ -469,6 +469,11 @@
#define MICROPY_PY_BUILTINS_EXECFILE (0)
#endif
+// Whether to support reversed function(type)
+#ifndef MICROPY_PY_BUILTINS_REVERSED
+#define MICROPY_PY_BUILTINS_REVERSED (1)
+#endif
+
// Whether to set __file__ for imported modules
#ifndef MICROPY_PY___FILE__
#define MICROPY_PY___FILE__ (1)
diff --git a/py/objreversed.c b/py/objreversed.c
index 0d5332d..7ad0f89 100644
--- a/py/objreversed.c
+++ b/py/objreversed.c
@@ -30,6 +30,8 @@
#include "py/nlr.h"
#include "py/runtime.h"
+#if MICROPY_PY_BUILTINS_REVERSED
+
typedef struct _mp_obj_reversed_t {
mp_obj_base_t base;
mp_obj_t seq; // sequence object that we are reversing
@@ -75,3 +77,5 @@
.getiter = mp_identity,
.iternext = reversed_iternext,
};
+
+#endif // MICROPY_PY_BUILTINS_REVERSED