Kaydet (Commit) df62e44f authored tarafından Guido van Rossum's avatar Guido van Rossum

Changed many calls to dict stufff to dict2 variants.

*** Somehow the call to printobject was changed back to fwrite?!?! ***
üst 4f4a55b9
...@@ -61,7 +61,7 @@ static object *build_class(); ...@@ -61,7 +61,7 @@ static object *build_class();
static int testbool(); static int testbool();
static int assign_subscript PROTO((object *, object *, object *)); static int assign_subscript PROTO((object *, object *, object *));
static int assign_slice PROTO((object *, object *, object *, object *)); static int assign_slice PROTO((object *, object *, object *, object *));
static int import_from PROTO((object *, object *, char *)); static int import_from PROTO((object *, object *, object *));
static frameobject *current_frame; static frameobject *current_frame;
...@@ -442,8 +442,8 @@ eval_code(co, globals, locals, arg) ...@@ -442,8 +442,8 @@ eval_code(co, globals, locals, arg)
if (is_stringobject(v)) { if (is_stringobject(v)) {
char *s = getstringvalue(v); char *s = getstringvalue(v);
int len = getstringsize(v); int len = getstringsize(v);
err = printobject(v, fp, PRINT_RAW); fwrite(s, 1, len, fp);
if (err == 0 && len > 0 && s[len-1] == '\n') if (len > 0 && s[len-1] == '\n')
softspace(sysget("stdout"), 0); softspace(sysget("stdout"), 0);
} }
else { else {
...@@ -560,9 +560,9 @@ eval_code(co, globals, locals, arg) ...@@ -560,9 +560,9 @@ eval_code(co, globals, locals, arg)
break; break;
case DELETE_NAME: case DELETE_NAME:
name = GETNAME(oparg); w = GETNAMEV(oparg);
if ((err = dictremove(f->f_locals, name)) != 0) if ((err = dict2remove(f->f_locals, w)) != 0)
err_setstr(NameError, name); err_setstr(NameError, getstringvalue(w));
break; break;
case UNPACK_TUPLE: case UNPACK_TUPLE:
...@@ -631,14 +631,17 @@ eval_code(co, globals, locals, arg) ...@@ -631,14 +631,17 @@ eval_code(co, globals, locals, arg)
break; break;
case LOAD_NAME: case LOAD_NAME:
name = GETNAME(oparg); w = GETNAMEV(oparg);
x = dictlookup(f->f_locals, name); x = dict2lookup(f->f_locals, w);
if (x == NULL) { if (x == NULL) {
x = dictlookup(f->f_globals, name); err_clear();
x = dict2lookup(f->f_globals, w);
if (x == NULL) { if (x == NULL) {
x = getbuiltin(name); err_clear();
x = getbuiltin(w);
if (x == NULL) { if (x == NULL) {
err_setstr(NameError, name); err_setstr(NameError,
getstringvalue(w));
break; break;
} }
} }
...@@ -648,12 +651,14 @@ eval_code(co, globals, locals, arg) ...@@ -648,12 +651,14 @@ eval_code(co, globals, locals, arg)
break; break;
case LOAD_GLOBAL: case LOAD_GLOBAL:
name = GETNAME(oparg); w = GETNAMEV(oparg);
x = dictlookup(f->f_globals, name); x = dict2lookup(f->f_globals, w);
if (x == NULL) { if (x == NULL) {
x = getbuiltin(name); err_clear();
x = getbuiltin(w);
if (x == NULL) { if (x == NULL) {
err_setstr(NameError, name); err_setstr(NameError,
getstringvalue(w));
break; break;
} }
} }
...@@ -662,10 +667,10 @@ eval_code(co, globals, locals, arg) ...@@ -662,10 +667,10 @@ eval_code(co, globals, locals, arg)
break; break;
case LOAD_LOCAL: case LOAD_LOCAL:
name = GETNAME(oparg); w = GETNAMEV(oparg);
x = dictlookup(f->f_locals, name); x = dict2lookup(f->f_locals, w);
if (x == NULL) { if (x == NULL) {
err_setstr(NameError, name); err_setstr(NameError, getstringvalue(w));
break; break;
} }
INCREF(x); INCREF(x);
...@@ -728,9 +733,9 @@ eval_code(co, globals, locals, arg) ...@@ -728,9 +733,9 @@ eval_code(co, globals, locals, arg)
break; break;
case IMPORT_FROM: case IMPORT_FROM:
name = GETNAME(oparg); w = GETNAMEV(oparg);
v = TOP(); v = TOP();
err = import_from(f->f_locals, v, name); err = import_from(f->f_locals, v, w);
break; break;
case JUMP_FORWARD: case JUMP_FORWARD:
...@@ -1131,7 +1136,6 @@ not(v) ...@@ -1131,7 +1136,6 @@ not(v)
INCREF(w); INCREF(w);
return w; return w;
} }
/* External interface to call any callable object. The arg may be NULL. */ /* External interface to call any callable object. The arg may be NULL. */
object * object *
...@@ -1464,36 +1468,36 @@ static int ...@@ -1464,36 +1468,36 @@ static int
import_from(locals, v, name) import_from(locals, v, name)
object *locals; object *locals;
object *v; object *v;
char *name; object *name;
{ {
object *w, *x; object *w, *x;
w = getmoduledict(v); w = getmoduledict(v);
if (name[0] == '*') { if (getstringvalue(name)[0] == '*') {
int i; int i;
int n = getdictsize(w); int n = getdictsize(w);
for (i = 0; i < n; i++) { for (i = 0; i < n; i++) {
name = getdictkey(w, i); name = getdict2key(w, i);
if (name == NULL || name[0] == '_') if (name == NULL || getstringvalue(name)[0] == '_')
continue; continue;
x = dictlookup(w, name); x = dict2lookup(w, name);
if (x == NULL) { if (x == NULL) {
/* XXX can't happen? */ /* XXX can't happen? */
err_setstr(NameError, name); err_setstr(NameError, getstringvalue(name));
return -1; return -1;
} }
if (dictinsert(locals, name, x) != 0) if (dict2insert(locals, name, x) != 0)
return -1; return -1;
} }
return 0; return 0;
} }
else { else {
x = dictlookup(w, name); x = dict2lookup(w, name);
if (x == NULL) { if (x == NULL) {
err_setstr(NameError, name); err_setstr(NameError, getstringvalue(name));
return -1; return -1;
} }
else else
return dictinsert(locals, name, x); return dict2insert(locals, name, x);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment