diff options
| author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-01-13 19:20:46 +0200 |
|---|---|---|
| committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-01-15 02:15:47 +0200 |
| commit | 36c4499d36a36ab3e1a68545e613bce61fb15f3c (patch) | |
| tree | 57d5184880bd55d8355864b0ec2fe834e11635c0 /py/builtin.c | |
| parent | 76d982ef343dcadd35355aed9c568984c850fb7b (diff) | |
Implement str() and repr() builtin functions.
Diffstat (limited to 'py/builtin.c')
| -rw-r--r-- | py/builtin.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/py/builtin.c b/py/builtin.c index a45b1463d..bc10f29d7 100644 --- a/py/builtin.c +++ b/py/builtin.c @@ -338,3 +338,19 @@ static mp_obj_t mp_builtin_sorted(mp_obj_t args, mp_map_t *kwargs) { return self; } MP_DEFINE_CONST_FUN_OBJ_KW(mp_builtin_sorted_obj, 1, mp_builtin_sorted); + +mp_obj_t mp_builtin_str(mp_obj_t o) { + vstr_t *vstr = vstr_new(); + mp_obj_print_helper(vstr_printf_wrapper, vstr, o, PRINT_STR); + return mp_obj_new_str(qstr_from_str_take(vstr->buf, vstr->alloc)); +} + +MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_str_obj, mp_builtin_str); + +mp_obj_t mp_builtin_repr(mp_obj_t o) { + vstr_t *vstr = vstr_new(); + mp_obj_print_helper(vstr_printf_wrapper, vstr, o, PRINT_REPR); + return mp_obj_new_str(qstr_from_str_take(vstr->buf, vstr->alloc)); +} + +MP_DEFINE_CONST_FUN_OBJ_1(mp_builtin_repr_obj, mp_builtin_repr); |
