diff options
Diffstat (limited to 'numpy/numarray/alter_code2.py')
-rw-r--r-- | numpy/numarray/alter_code2.py | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/numpy/numarray/alter_code2.py b/numpy/numarray/alter_code2.py new file mode 100644 index 000000000..87ec5aa07 --- /dev/null +++ b/numpy/numarray/alter_code2.py @@ -0,0 +1,70 @@ +""" +This module converts code written for numpy.numarray to work +with numpy + +FIXME: finish this. + +""" +#__all__ = ['convertfile', 'convertall', 'converttree'] +__all__ = [] + +import warnings +warnings.warn("numpy.numarray.alter_code2 is not working yet.") +import sys + + +import os +import re +import glob + + +def makenewfile(name, filestr): + fid = file(name, 'w') + fid.write(filestr) + fid.close() + +def getandcopy(name): + fid = file(name) + filestr = fid.read() + fid.close() + base, ext = os.path.splitext(name) + makenewfile(base+'.orig', filestr) + return filestr + +def convertfile(filename): + """Convert the filename given from using Numeric to using NumPy + + Copies the file to filename.orig and then over-writes the file + with the updated code + """ + filestr = getandcopy(filename) + filestr = fromstr(filestr) + makenewfile(filename, filestr) + +def fromargs(args): + filename = args[1] + convertfile(filename) + +def convertall(direc=os.path.curdir): + """Convert all .py files to use NumPy (from Numeric) in the directory given + + For each file, a backup of <usesnumeric>.py is made as + <usesnumeric>.py.orig. A new file named <usesnumeric>.py + is then written with the updated code. + """ + files = glob.glob(os.path.join(direc,'*.py')) + for afile in files: + convertfile(afile) + +def _func(arg, dirname, fnames): + convertall(dirname) + +def converttree(direc=os.path.curdir): + """Convert all .py files in the tree given + + """ + os.path.walk(direc, _func, None) + + +if __name__ == '__main__': + fromargs(sys.argv) |