summaryrefslogtreecommitdiff
path: root/py/runtime.h
diff options
context:
space:
mode:
Diffstat (limited to 'py/runtime.h')
-rw-r--r--py/runtime.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/py/runtime.h b/py/runtime.h
index f0d41f38d..4393fbfa8 100644
--- a/py/runtime.h
+++ b/py/runtime.h
@@ -57,6 +57,15 @@ typedef struct _mp_arg_t {
mp_arg_val_t defval;
} mp_arg_t;
+struct _mp_sched_node_t;
+
+typedef void (*mp_sched_callback_t)(struct _mp_sched_node_t *);
+
+typedef struct _mp_sched_node_t {
+ mp_sched_callback_t callback;
+ struct _mp_sched_node_t *next;
+} mp_sched_node_t;
+
// Tables mapping operator enums to qstrs, defined in objtype.c
extern const byte mp_unary_op_method_name[];
extern const byte mp_binary_op_method_name[];
@@ -74,6 +83,7 @@ void mp_sched_lock(void);
void mp_sched_unlock(void);
#define mp_sched_num_pending() (MP_STATE_VM(sched_len))
bool mp_sched_schedule(mp_obj_t function, mp_obj_t arg);
+bool mp_sched_schedule_node(mp_sched_node_t *node, mp_sched_callback_t callback);
#endif
// extra printing method specifically for mp_obj_t's which are integral type