added slot number to memberinfo
[swftools.git] / lib / as3 / mkabc.py
index 0a946d6..82283ab 100644 (file)
@@ -1,4 +1,24 @@
 #!/usr/bin/python
+#
+# mkops.py
+#
+# Generate opcodes.h, opcodes.h
+#
+# Copyright (c) 2008 Matthias Kramm <kramm@quiss.org>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
 
 import re
 
@@ -46,9 +66,9 @@ for line in fi.readlines():
                 elif c in "nubs":
                     type,pname="int","v"
                 elif c == "m":
-                    type,pname="abc_method_body_t*","m"
-                elif c == "i":
                     type,pname="abc_method_t*","m"
+                elif c == "i":
+                    type,pname="abc_method_body_t*","m"
                 elif c == "c":
                     type,pname="abc_class_t*","m"
                 elif c == "j":
@@ -126,6 +146,8 @@ for line in fi.readlines():
             foh.write(",".join(["method->code"]+names))
             foh.write("))\n")
 
+            foh.write("#define OPCODE_"+name.upper()+" "+op+"\n")
+
 foh.write("#endif\n")
 
 foh.close()