All pastes #674110 Raw Edit

Anonymous

public text v1 · immutable
#674110 ·published 2007-08-28 22:47 UTC
rendered paste body
diff -r -u pyrexgen.git/pyrexgen.py pyrexgen.git.kakaroto/pyrexgen.py
--- pyrexgen.git/pyrexgen.py    2007-08-27 09:59:05.000000000 -0400
+++ pyrexgen.git.kakaroto/pyrexgen.py   2007-08-28 18:47:09.000000000 -0400
@@ -1,3 +1,5 @@
+#!/usr/bin/python
+
 import sys
 import os.path
 from structobj import *
@@ -47,15 +49,15 @@
                 "            return self." + p[0] + "_get()\n\n")
             if has_set:
                 self.out_pyx.writelines(
-                    "        def __set__(self, arg):\n")
+                    "        def __set__(self, " + p[0] + "):\n")
                 if multi_set:
                     msettable.append(name)
                     self.out_pyx.writelines(
-                        "            self." + p[0] + "_set(*arg)\n\n")
+                        "            self." + p[0] + "_set(*" + p[0] + ")\n\n")
                 else:
                     settable.append(name)
                     self.out_pyx.writelines(
-                        "            self." + p[0] + "_set(arg)\n\n")
+                        "            self." + p[0] + "_set(" + p[0] + ")\n\n")
 
         if not settable:
             return
@@ -491,6 +493,14 @@
     import hparser
     from pprint import pprint
 
+    if len(args) < 2:
+        print "Usage : %s header_file [override_method] [override_method] [...]" % args[0]
+        sys.exit(1)
+
+    if not os.path.exists(args[1]) or not os.path.isfile(args[1]):
+       print "File not found!"
+       sys.exit(1)
+
     f = args[1]
     buf = open(f).read()
 
@@ -532,9 +542,11 @@
         o.constructors.sort()
         o.methods.sort()
 
-    out_pyx = open("out.pyx", "wb")
-    out_pxd = open("out.pxd", "wb")
-    out_override = open("out_over.pxi", "wb")
+    filename = os.path.splitext(os.path.basename(args[1]))[0]
+
+    out_pyx = open(filename + ".pyx", "wb")
+    out_pxd = open(filename + ".pxd", "wb")
+    out_override = open(filename + "_over.pxi", "wb")
     gen = Generator(out_pxd=out_pxd, out_pyx=out_pyx,
                     out_override=out_override,
                     header=args[1],