Mercurial > pytave
changeset 226:382bb1d91239
maint: import standard Python names consistently
* pycall.cc, pyeval.cc, pyexec.cc: Import the builtins and main namespaces
consistently.
author | Mike Miller <mtmiller@octave.org> |
---|---|
date | Wed, 20 Jul 2016 11:39:23 -0700 |
parents | 0c6f7ae8a95b |
children | c56b85f405ba |
files | pycall.cc pyeval.cc pyexec.cc |
diffstat | 3 files changed, 16 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/pycall.cc Wed Jul 20 11:12:36 2016 -0700 +++ b/pycall.cc Wed Jul 20 11:39:23 2016 -0700 @@ -84,15 +84,15 @@ numeric::array::set_module_and_type ("numpy", "ndarray"); _import_array (); + object main_module = import ("__main__"); +#if PY_VERSION_HEX >= 0x03000000 + object builtins_module = import ("builtins"); +#else + object builtins_module = import ("__builtin__"); +#endif + try { - object main_module = import ("__main__"); -#if PY_VERSION_HEX >= 0x03000000 - object builtins_module = import ("builtins"); -#else - object builtins_module = import ("__builtin__"); -#endif - object mod; if (module.empty ())
--- a/pyeval.cc Wed Jul 20 11:12:36 2016 -0700 +++ b/pyeval.cc Wed Jul 20 11:39:23 2016 -0700 @@ -72,13 +72,17 @@ object main_module = import ("__main__"); object main_namespace = main_module.attr ("__dict__"); +#if PY_VERSION_HEX >= 0x03000000 + object builtins_module = import ("builtins"); +#else + object builtins_module = import ("__builtin__"); +#endif try { res = eval (code.c_str (), main_namespace, main_namespace); - object builtins = main_module.attr ("__builtins__"); // hex(id(res)) - object idtmp = builtins.attr("hex")(builtins.attr("id")(res)); + object idtmp = builtins_module.attr("hex")(builtins_module.attr("id")(res)); id = extract<std::string> (idtmp); // FIXME: currently, we cannot return the raw object to octave...
--- a/pyexec.cc Wed Jul 20 11:12:36 2016 -0700 +++ b/pyexec.cc Wed Jul 20 11:39:23 2016 -0700 @@ -66,11 +66,11 @@ Py_Initialize (); + object main_module = import ("__main__"); + object main_namespace = main_module.attr ("__dict__"); + try { - object main_module = import ("__main__"); - object main_namespace = main_module.attr ("__dict__"); - // FIXME: figure out exec return code: // http://www.boost.org/doc/libs/1_38_0/libs/python/doc/v2/exec.html exec (code.c_str (), main_namespace, main_namespace);