diff options
author | Damien George <damien.p.george@gmail.com> | 2014-03-22 21:31:28 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-03-22 21:31:28 +0000 |
commit | 3ec0a1a32dcda730fa3745f30e97565200f593e8 (patch) | |
tree | 520dc05caa882fe824e54b2c4c4a32cb3f037661 /py/objobject.c | |
parent | eabdf6718a8d9d10c810b8cd440b82a11d517205 (diff) | |
download | micropython-3ec0a1a32dcda730fa3745f30e97565200f593e8.tar.gz micropython-3ec0a1a32dcda730fa3745f30e97565200f593e8.zip |
py: Add 'object' object.
Diffstat (limited to 'py/objobject.c')
-rw-r--r-- | py/objobject.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/py/objobject.c b/py/objobject.c new file mode 100644 index 0000000000..274135c6c9 --- /dev/null +++ b/py/objobject.c @@ -0,0 +1,30 @@ +#include <stdlib.h> + +#include "nlr.h" +#include "misc.h" +#include "mpconfig.h" +#include "qstr.h" +#include "obj.h" +#include "runtime0.h" + +typedef struct _mp_obj_object_t { + mp_obj_base_t base; +} mp_obj_object_t; + +const mp_obj_type_t mp_type_object; + +STATIC mp_obj_t object_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const mp_obj_t *args) { + if (n_args != 0 || n_kw != 0) { + nlr_jump(mp_obj_new_exception_msg(&mp_type_TypeError, "object takes no arguments")); + } + + mp_obj_object_t *o = m_new_obj(mp_obj_object_t); + o->base.type = &mp_type_object; + return o; +} + +const mp_obj_type_t mp_type_object = { + { &mp_type_type }, + .name = MP_QSTR_object, + .make_new = object_make_new, +}; |