diff options
author | Damien George <damien.p.george@gmail.com> | 2016-04-25 09:15:21 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-06-28 11:28:48 +0100 |
commit | 2dacd604c51d27f08076e76abd91de43bc2481f3 (patch) | |
tree | 41ab2a5d4f9d25e7d45f2d22ad3505832212a9b4 | |
parent | 707f98f207d85b1de9814e90254d52a78ac19739 (diff) | |
download | micropython-2dacd604c51d27f08076e76abd91de43bc2481f3.tar.gz micropython-2dacd604c51d27f08076e76abd91de43bc2481f3.zip |
py/modthread: Add exit() function.
Simply raises the SystemExit exception.
-rw-r--r-- | py/modthread.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/py/modthread.c b/py/modthread.c index 8135a5e88c..2420cfc214 100644 --- a/py/modthread.c +++ b/py/modthread.c @@ -144,11 +144,17 @@ STATIC mp_obj_t mod_thread_start_new_thread(size_t n_args, const mp_obj_t *args) } STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mod_thread_start_new_thread_obj, 2, 3, mod_thread_start_new_thread); +STATIC mp_obj_t mod_thread_exit(void) { + nlr_raise(mp_obj_new_exception(&mp_type_SystemExit)); +} +STATIC MP_DEFINE_CONST_FUN_OBJ_0(mod_thread_exit_obj, mod_thread_exit); + STATIC const mp_rom_map_elem_t mp_module_thread_globals_table[] = { { MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR__thread) }, { MP_ROM_QSTR(MP_QSTR_get_ident), MP_ROM_PTR(&mod_thread_get_ident_obj) }, { MP_ROM_QSTR(MP_QSTR_stack_size), MP_ROM_PTR(&mod_thread_stack_size_obj) }, { MP_ROM_QSTR(MP_QSTR_start_new_thread), MP_ROM_PTR(&mod_thread_start_new_thread_obj) }, + { MP_ROM_QSTR(MP_QSTR_exit), MP_ROM_PTR(&mod_thread_exit_obj) }, }; STATIC MP_DEFINE_CONST_DICT(mp_module_thread_globals, mp_module_thread_globals_table); |