diff options
| author | Paul Sokolovsky | 2014-01-20 00:53:46 +0200 |
|---|---|---|
| committer | Paul Sokolovsky | 2014-01-20 01:00:28 +0200 |
| commit | fe2690da0a1b8556995f5a6d2368d250f504b4af (patch) | |
| tree | 4aa26f12484de4b9de16107a8d03957c9696376c /unix | |
| parent | f477bfbc75318b30048b2e68f4d04348eac41105 (diff) | |
unix: Implement sys.argv.
Diffstat (limited to 'unix')
| -rw-r--r-- | unix/main.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/unix/main.c b/unix/main.c index b39ed4f2c..08567c04d 100644 --- a/unix/main.c +++ b/unix/main.c @@ -216,6 +216,10 @@ int main(int argc, char **argv) { qstr_init(); rt_init(); + mp_obj_t m_sys = mp_obj_new_module(qstr_from_str_static("sys")); + mp_obj_t py_argv = mp_obj_new_list(0, NULL); + rt_store_attr(m_sys, qstr_from_str_static("argv"), py_argv); + rt_store_name(qstr_from_str_static("test"), test_obj_new(42)); rt_store_name(qstr_from_str_static("open"), (mp_obj_t)&mp_builtin_open_obj); rawsocket_init(); @@ -254,7 +258,11 @@ int main(int argc, char **argv) { return usage(); } } else { + for (int i = a; i < argc; i++) { + rt_list_append(py_argv, MP_OBJ_NEW_QSTR(qstr_from_strn_copy(argv[i], strlen(argv[i])))); + } do_file(argv[a]); + break; } } } |
