add lots of stuff
[cdsspec-compiler.git] / src / edu / uci / eecs / specCompiler / specExtraction / FunctionHeader.java
index 54924ff03119199d1f2e5de4d865a9b72cb0a196..f8e84bcb5508f3518ea198c15daae64c6b672c1d 100644 (file)
@@ -15,6 +15,34 @@ public class FunctionHeader {
        }
 
        public String toString() {
-               return "Ret: " + returnType + "\n" + qualifiedName + "\n" + args;
+               String res = returnType + " " + qualifiedName.fullName + "(";
+               if (args.size() >= 1) {
+                       res = res + args.get(0);
+               }
+               for (int i = 1; i < args.size(); i++) {
+                       res = res + ", " + args.get(i);
+               }
+               res = res + ")";
+               return res;
+       }
+
+       public FunctionHeader getRenamedHeader(String prefix) {
+               String newFullName = qualifiedName.qualifiedName + prefix + "_"
+                               + qualifiedName.bareName;
+               FunctionHeader newHeader = new FunctionHeader(returnType,
+                               new QualifiedName(newFullName), args);
+               return newHeader;
+       }
+
+       public String getRenamedCall(String prefix) {
+               String res = prefix + "_" + qualifiedName.fullName + "(";
+               if (args.size() >= 1) {
+                       res = res + args.get(0).name;
+               }
+               for (int i = 1; i < args.size(); i++) {
+                       res = res + ", " + args.get(i).name;
+               }
+               res = res + ")";
+               return res;
        }
 }