Reviewed by Darin.
authorstaikos <staikos@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 12 Jan 2006 19:01:29 +0000 (19:01 +0000)
committerstaikos <staikos@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 12 Jan 2006 19:01:29 +0000 (19:01 +0000)
Add collector helper to interpreter in order to facilitate visibility rules in
KDE.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@12031 268f45cc-cd09-0410-ab3c-d52691b4dbfc

JavaScriptCore/ChangeLog
JavaScriptCore/kjs/interpreter.cpp
JavaScriptCore/kjs/interpreter.h
JavaScriptCore/kjs/testkjs.cpp

index 52fb199..4e35ac2 100644 (file)
@@ -1,5 +1,15 @@
 2006-01-12  George Staikos <staikos@kde.org>
 
+        Reviewed by Darin.
+
+        * kjs/interpreter.cpp:
+        * kjs/testkjs.cpp:
+        * kjs/interpreter.h:
+        Add helper to interpreter to call the collector in order to facilitate
+        visibility rules in KDE.
+
+2006-01-12  George Staikos <staikos@kde.org>
+
         Reviewed by Maciej.
 
         * kjs/kjs.pro: Updates to build the whole thing on Linux at least.
index a2de5dc..a0b0773 100644 (file)
@@ -291,6 +291,11 @@ Interpreter::CompatMode Interpreter::compatMode() const
   return rep->compatMode();
 }
 
+bool Interpreter::collect()
+{
+  return Collector::collect();
+}
+
 #ifdef KJS_DEBUG_MEM
 #include "lexer.h"
 void Interpreter::finalCheck()
index cc47532..d963970 100644 (file)
@@ -337,6 +337,12 @@ namespace KJS {
     CompatMode compatMode() const;
 
     /**
+     * Run the garbage collection. Returns true when at least one object
+     * was collected; false otherwise.
+     */
+    static bool collect();
+
+    /**
      * Called by InterpreterImp during the mark phase of the garbage collector
      * Default implementation does nothing, this exist for classes that reimplement Interpreter.
      */
index 11d8a5c..9ac45d8 100644 (file)
@@ -31,7 +31,6 @@
 #include "object.h"
 #include "types.h"
 #include "interpreter.h"
-#include "collector.h"
 #include "JSLock.h"
 
 using namespace KJS;
@@ -67,7 +66,7 @@ JSValue *TestFunctionImp::callAsFunction(ExecState *exec, JSObject */*thisObj*/,
   case GC:
   {
     JSLock lock;
-    Collector::collect();
+    Interpreter::collect();
   }
     break;
   default: