Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
cc0af3d7
Commit
cc0af3d7
authored
Apr 06, 2014
by
Paul Sokolovsky
Browse files
py: Implement globals() and locals() builtins.
parent
17520224
Changes
4
Hide whitespace changes
Inline
Side-by-side
py/builtin.c
View file @
cc0af3d7
...
...
@@ -410,3 +410,16 @@ STATIC mp_obj_t mp_builtin_getattr(uint n_args, const mp_obj_t *args) {
}
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN
(
mp_builtin_getattr_obj
,
2
,
3
,
mp_builtin_getattr
);
STATIC
mp_obj_t
mp_builtin_globals
()
{
return
mp_globals_get
();
}
MP_DEFINE_CONST_FUN_OBJ_0
(
mp_builtin_globals_obj
,
mp_builtin_globals
);
STATIC
mp_obj_t
mp_builtin_locals
()
{
return
mp_locals_get
();
}
MP_DEFINE_CONST_FUN_OBJ_0
(
mp_builtin_locals_obj
,
mp_builtin_locals
);
py/builtin.h
View file @
cc0af3d7
...
...
@@ -13,6 +13,7 @@ MP_DECLARE_CONST_FUN_OBJ(mp_builtin_divmod_obj);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_eval_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_exec_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_getattr_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_globals_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_hash_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_id_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_isinstance_obj
);
...
...
@@ -20,6 +21,7 @@ MP_DECLARE_CONST_FUN_OBJ(mp_builtin_issubclass_obj);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_iter_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_len_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_list_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_locals_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_max_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_min_obj
);
MP_DECLARE_CONST_FUN_OBJ
(
mp_builtin_next_obj
);
...
...
py/builtintables.c
View file @
cc0af3d7
...
...
@@ -54,12 +54,14 @@ STATIC const mp_map_elem_t mp_builtin_object_table[] = {
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_eval
),
(
mp_obj_t
)
&
mp_builtin_eval_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_exec
),
(
mp_obj_t
)
&
mp_builtin_exec_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_getattr
),
(
mp_obj_t
)
&
mp_builtin_getattr_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_globals
),
(
mp_obj_t
)
&
mp_builtin_globals_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_hash
),
(
mp_obj_t
)
&
mp_builtin_hash_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_id
),
(
mp_obj_t
)
&
mp_builtin_id_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_isinstance
),
(
mp_obj_t
)
&
mp_builtin_isinstance_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_issubclass
),
(
mp_obj_t
)
&
mp_builtin_issubclass_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_iter
),
(
mp_obj_t
)
&
mp_builtin_iter_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_len
),
(
mp_obj_t
)
&
mp_builtin_len_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_locals
),
(
mp_obj_t
)
&
mp_builtin_locals_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_max
),
(
mp_obj_t
)
&
mp_builtin_max_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_min
),
(
mp_obj_t
)
&
mp_builtin_min_obj
},
{
MP_OBJ_NEW_QSTR
(
MP_QSTR_next
),
(
mp_obj_t
)
&
mp_builtin_next_obj
},
...
...
py/qstrdefs.h
View file @
cc0af3d7
...
...
@@ -97,6 +97,7 @@ Q(exec)
Q
(
filter
)
Q
(
float
)
Q
(
getattr
)
Q
(
globals
)
Q
(
hash
)
Q
(
id
)
Q
(
io
)
...
...
@@ -106,6 +107,7 @@ Q(issubclass)
Q
(
iter
)
Q
(
len
)
Q
(
list
)
Q
(
locals
)
Q
(
map
)
Q
(
max
)
Q
(
min
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment