OSDN Git Service

Changed "for" description.
[soba/JavaAnalysisToolsDemo.git] / JavaAnalysisToolsDemo / src / demo / soba / ClassHierarchyPerformance.java
index 31a0ff1..9cb8f85 100644 (file)
@@ -1,5 +1,6 @@
 package demo.soba;\r
 \r
+import demo.util.MemoryInfo;\r
 import soba.core.ClassHierarchy;\r
 import soba.core.ClassInfo;\r
 import soba.core.JavaProgram;\r
@@ -10,24 +11,29 @@ import soba.util.files.ClasspathUtil;
 public class ClassHierarchyPerformance {\r
 \r
        public static void main(String[] args) {\r
+               long start = System.currentTimeMillis();\r
+               \r
                JavaProgram program = new JavaProgram(ClasspathUtil.getClassList(args));\r
                ClassHierarchy ch = program.getClassHierarchy();\r
-               \r
                for (ClassInfo c: program.getClasses()) {\r
                        for (MethodInfo m: c.getMethods()) {\r
-                               System.out.println(m.toLongString());\r
                                for (CallSite cs: m.getCallSites()) {\r
                                        MethodInfo[] callees = ch.resolveCall(cs);\r
                                        if (callees.length > 0) {\r
                                                for (MethodInfo callee: callees) {\r
-                                                       System.out.println("  [inside] " + callee.toLongString());\r
+                                                       System.out.println(" [inside] " + m.toLongString() + " may call " + callee.toLongString());\r
                                                }\r
                                        } else {\r
-                                               System.out.println("  [outside] " + cs.toString());\r
+                                               System.out.println(" [outside] " + cs.toString());\r
                                        }\r
                                }\r
                        }\r
                }\r
+               \r
+               long end = System.currentTimeMillis();\r
+               \r
+               System.err.println((end - start) + " [ms]");\r
+               System.err.println(MemoryInfo.getMemoryInfo());\r
        }\r
 \r
 }\r