Commit 8d4e3478 authored by Jim Fulton's avatar Jim Fulton

Changed namespace name to _vars.

parent 712bc005
"""Very Safe Python Expressions """Very Safe Python Expressions
""" """
__rcs_id__='$Id: VSEval.py,v 1.5 1997/10/29 17:00:11 jim Exp $' __rcs_id__='$Id: VSEval.py,v 1.6 1997/10/29 21:31:02 jim Exp $'
############################################################################ ############################################################################
# Copyright # Copyright
...@@ -55,7 +55,7 @@ __rcs_id__='$Id: VSEval.py,v 1.5 1997/10/29 17:00:11 jim Exp $' ...@@ -55,7 +55,7 @@ __rcs_id__='$Id: VSEval.py,v 1.5 1997/10/29 17:00:11 jim Exp $'
# (540) 371-6909 # (540) 371-6909
# #
############################################################################ ############################################################################
__version__='$Revision: 1.5 $'[11:-2] __version__='$Revision: 1.6 $'[11:-2]
from string import join from string import join
import new, sys import new, sys
...@@ -112,7 +112,7 @@ class Eval: ...@@ -112,7 +112,7 @@ class Eval:
# 'manage'. This is a DC specific rule and probably needs to be # 'manage'. This is a DC specific rule and probably needs to be
# made customizable! # made customizable!
for name in names: for name in names:
if name[:1]=='_' and name != '__env__': if name[:1]=='_' and name != '_' and name != '_vars':
raise TypeError, 'illegal name used in expression' raise TypeError, 'illegal name used in expression'
...@@ -231,14 +231,14 @@ class Eval: ...@@ -231,14 +231,14 @@ class Eval:
# push name of special environment variable, '_env': # push name of special environment variable, '_env':
if envpos < 0: if envpos < 0:
envpos=len(names) envpos=len(names)
names.append('__env__') names.append('_vars')
out.append(LOAD_NAME) out.append(LOAD_NAME)
out.append(envpos%256) out.append(envpos%256)
out.append(envpos/256) out.append(envpos/256)
return envpos return envpos
def eval(self, mapping): def eval(self, mapping):
d={'__env__': mapping} d={'_vars': mapping}
code=self.code code=self.code
for name in self.used: for name in self.used:
try: d[name]=mapping.getitem(name,0) try: d[name]=mapping.getitem(name,0)
...@@ -436,6 +436,9 @@ if __name__=='__main__': globals()[sys.argv[1]]() ...@@ -436,6 +436,9 @@ if __name__=='__main__': globals()[sys.argv[1]]()
############################################################################ ############################################################################
# #
# $Log: VSEval.py,v $ # $Log: VSEval.py,v $
# Revision 1.6 1997/10/29 21:31:02 jim
# Changed namespace name to _vars.
#
# Revision 1.5 1997/10/29 17:00:11 jim # Revision 1.5 1997/10/29 17:00:11 jim
# Made namespace, __env__ public. # Made namespace, __env__ public.
# #
......
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