Changeset 43130 in webkit for trunk/JavaScriptCore/runtime/JSNumberCell.h
- Timestamp:
- May 1, 2009, 5:25:41 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/JSNumberCell.h
r43122 r43130 53 53 friend JSValue jsNumberCell(JSGlobalData*, double); 54 54 friend JSValue jsNumberCell(ExecState*, double); 55 friend JSValue jsAPIMangledNumber(ExecState*, double); 55 56 public: 56 57 double value() const { return m_value; } … … 66 67 virtual JSObject* toThisObject(ExecState*) const; 67 68 virtual JSValue getJSNumber(); 69 70 static const uintptr_t JSAPIMangledMagicNumber = 0xbbadbeef; 71 bool isAPIMangledNumber() const { return m_structure == reinterpret_cast<Structure*>(JSAPIMangledMagicNumber); } 68 72 69 73 void* operator new(size_t size, ExecState* exec) … … 100 104 } 101 105 106 enum APIMangledTag { APIMangled }; 107 JSNumberCell(APIMangledTag, double value) 108 : JSCell(reinterpret_cast<Structure*>(JSAPIMangledMagicNumber)) 109 , m_value(value) 110 { 111 } 112 102 113 virtual bool getUInt32(uint32_t&) const; 103 114 virtual bool getTruncatedInt32(int32_t&) const; … … 223 234 ASSERT(isNumber()); 224 235 return JSImmediate::isImmediate(asValue()) ? JSImmediate::toDouble(asValue()) : getDoubleNumber(); 236 } 237 238 JSValue jsAPIMangledNumber(ExecState* exec, double); 239 240 inline bool JSValue::isAPIMangledNumber() 241 { 242 ASSERT(isNumber()); 243 return JSImmediate::isImmediate(asValue()) ? false : asNumberCell(asValue())->isAPIMangledNumber(); 225 244 } 226 245
Note:
See TracChangeset
for help on using the changeset viewer.