More filtering: never define a method call 'call' since Groovy generates a lot of...
authorrtrimana <rtrimana@uci.edu>
Sat, 4 Jul 2020 00:14:00 +0000 (17:14 -0700)
committerrtrimana <rtrimana@uci.edu>
Sat, 4 Jul 2020 00:14:00 +0000 (17:14 -0700)
src/main/gov/nasa/jpf/vm/serialize/SmartThingsConfig.java

index 94fc0f3aabd1cbadfda4026a009af4735caa5fc5..589f53eee0f1bba68fc0fcf6cfc4a8db033c08a5 100644 (file)
@@ -147,15 +147,21 @@ public class SmartThingsConfig
     return sofar;
   }
 
+  boolean checkName(String name) {
+    if (name.equals("call"))
+      return true;
+    return (name.charAt(0) == '[' && name.charAt(name.length()-1)==']');
+  }
+  
   @Override
   public FramePolicy ammendFramePolicy(MethodInfo mi, FramePolicy sofar) {
     ClassInfo ci = mi.getClassInfo();
-    if (ignoreClass(ci)) {
+    if (ignoreClass(ci) || checkName(mi.getName())) {
       sofar.includeLocals = false;
       sofar.includeOps = false;
       sofar.includePC = false;
     } else {
-      //      System.out.println("Including M: " +mi);
+      //            System.out.println("Including M: " +mi.getName());
     }
 
     return sofar;