Changeset 41126 in webkit for trunk/JavaScriptCore/runtime/JSGlobalData.h
- Timestamp:
- Feb 22, 2009, 3:26:07 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/JSGlobalData.h
r40993 r41126 30 30 #define JSGlobalData_h 31 31 32 #include "Collector.h" 33 #include "ExecutableAllocator.h" 34 #include "JSValue.h" 35 #include "SmallStrings.h" 36 #include "TimeoutChecker.h" 32 37 #include <wtf/Forward.h> 33 38 #include <wtf/HashMap.h> 34 39 #include <wtf/RefCounted.h> 35 #include "Collector.h"36 #include "ExecutableAllocator.h"37 #include "SmallStrings.h"38 #include "JSValue.h"39 40 40 41 struct OpaqueJSClass; … … 61 62 class JSGlobalData : public RefCounted<JSGlobalData> { 62 63 public: 64 struct ClientData { 65 virtual ~ClientData() = 0; 66 }; 67 63 68 static bool sharedInstanceExists(); 64 69 static JSGlobalData& sharedInstance(); … … 73 78 #endif 74 79 75 const Vector<Instruction>& numericCompareFunction(ExecState*); 76 Vector<Instruction> lazyNumericCompareFunction; 77 bool initializingLazyNumericCompareFunction; 80 bool isSharedInstance; 81 ClientData* clientData; 78 82 79 83 Interpreter* interpreter; 84 TimeoutChecker timeoutChecker; 80 85 81 86 JSValuePtr exception; … … 83 88 void* exceptionLocation; 84 89 #endif 90 91 const Vector<Instruction>& numericCompareFunction(ExecState*); 92 Vector<Instruction> lazyNumericCompareFunction; 93 bool initializingLazyNumericCompareFunction; 85 94 86 95 const HashTable* arrayTable; … … 105 114 CommonIdentifiers* propertyNames; 106 115 const ArgList* emptyList; // Lists are supposed to be allocated on the stack to have their elements properly marked, which is not the case here - but this list has nothing to mark. 107 108 116 SmallStrings smallStrings; 109 117 110 118 HashMap<OpaqueJSClass*, OpaqueJSClassContextData*> opaqueJSClassData; 111 119 120 Lexer* lexer; 121 Parser* parser; 112 122 HashSet<ParserRefCounted*>* newParserObjects; 113 123 HashCountedSet<ParserRefCounted*>* parserObjectExtraRefCounts; 114 124 115 Lexer* lexer;116 Parser* parser;117 118 125 JSGlobalObject* head; 119 126 JSGlobalObject* dynamicGlobalObject; 120 121 bool isSharedInstance;122 123 struct ClientData {124 virtual ~ClientData() = 0;125 };126 127 ClientData* clientData;128 127 129 128 HashSet<JSObject*> arrayVisitedElements; … … 135 134 PassRefPtr<ExecutablePool> poolForSize(size_t n) { return m_executableAllocator.poolForSize(n); } 136 135 #endif 136 137 137 private: 138 138 JSGlobalData(bool isShared = false); … … 143 143 static JSGlobalData*& sharedInstanceInternal(); 144 144 }; 145 } // namespace JSC 145 146 146 } 147 148 #endif 147 #endif // JSGlobalData_h
Note:
See TracChangeset
for help on using the changeset viewer.