]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - runtime/StrictEvalActivation.h
JavaScriptCore-7600.1.4.15.12.tar.gz
[apple/javascriptcore.git] / runtime / StrictEvalActivation.h
index a7b6d3e96458a498b293852f4440e3a1c5822578..e02bb615d04fb15ec7f5cf147ab16991e0ac51d8 100644 (file)
 #ifndef StrictEvalActivation_h
 #define StrictEvalActivation_h
 
-#include "JSObject.h"
+#include "JSScope.h"
 
 namespace JSC {
 
-class StrictEvalActivation : public JSNonFinalObject {
+class StrictEvalActivation : public JSScope {
 public:
-    typedef JSNonFinalObject Base;
+    typedef JSScope Base;
 
     static StrictEvalActivation* create(ExecState* exec)
     {
         StrictEvalActivation* activation = new (NotNull, allocateCell<StrictEvalActivation>(*exec->heap())) StrictEvalActivation(exec);
-        activation->finishCreation(exec->globalData());
+        activation->finishCreation(exec->vm());
         return activation;
     }
 
-    static bool deleteProperty(JSCell*, ExecState*, const Identifier&);
-    static JSObject* toThisObject(JSCell*, ExecState*);
+    static bool deleteProperty(JSCell*, ExecState*, PropertyName);
+    static JSValue toThis(JSCell*, ExecState*, ECMAMode);
 
-    static Structure* createStructure(JSGlobalData& globalData, JSGlobalObject* globalObject, JSValue prototype)
+    static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype)
     {
-        return Structure::create(globalData, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), &s_info);
+        return Structure::create(vm, globalObject, prototype, TypeInfo(ObjectType, StructureFlags), info());
     }
     
-    static const ClassInfo s_info;
+    DECLARE_INFO;
 
 protected:
-    static const unsigned StructureFlags = IsEnvironmentRecord | JSNonFinalObject::StructureFlags;
+    static const unsigned StructureFlags = IsEnvironmentRecord | Base::StructureFlags;
 
 private:
     StrictEvalActivation(ExecState*);