Skip to content

Commit baaaf65

Browse files
committed
modsys: Implement basic sys.version_info.
1 parent da6c2fa commit baaaf65

2 files changed

Lines changed: 7 additions & 0 deletions

File tree

py/modsys.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
#include "builtin.h"
66
#include "runtime.h"
77
#include "objlist.h"
8+
#include "objtuple.h"
89

910
#if MICROPY_ENABLE_MOD_SYS
1011

@@ -17,11 +18,16 @@ extern struct _dummy_t mp_sys_stderr_obj;
1718

1819
mp_obj_list_t mp_sys_path_obj;
1920
mp_obj_list_t mp_sys_argv_obj;
21+
#define I(n) MP_OBJ_NEW_SMALL_INT(n)
22+
// TODO: CPython is now at 5-element array, but save 2 els so far...
23+
STATIC const mp_obj_tuple_t mp_sys_version_info_obj = {{&mp_type_tuple}, 3, {I(3), I(3), I(5)}};
24+
#undef I
2025

2126
STATIC const mp_map_elem_t mp_module_sys_globals_table[] = {
2227
{ MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR_sys) },
2328
{ MP_OBJ_NEW_QSTR(MP_QSTR_path), (mp_obj_t)&mp_sys_path_obj },
2429
{ MP_OBJ_NEW_QSTR(MP_QSTR_argv), (mp_obj_t)&mp_sys_argv_obj },
30+
{ MP_OBJ_NEW_QSTR(MP_QSTR_version_info), (mp_obj_t)&mp_sys_version_info_obj },
2531

2632
#if MICROPY_MOD_SYS_STDFILES
2733
{ MP_OBJ_NEW_QSTR(MP_QSTR_stdin), (mp_obj_t)&mp_sys_stdin_obj },

py/qstrdefs.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,4 +276,5 @@ Q(argv)
276276
Q(stdin)
277277
Q(stdout)
278278
Q(stderr)
279+
Q(version_info)
279280
#endif

0 commit comments

Comments
 (0)