Changeset 43157 in webkit for trunk/JavaScriptCore/runtime/JSNumberCell.h
- Timestamp:
- May 3, 2009, 12:27:42 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/JSNumberCell.h
r43139 r43157 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; … … 224 235 ASSERT(isNumber()); 225 236 return JSImmediate::isImmediate(asValue()) ? JSImmediate::toDouble(asValue()) : getDoubleNumber(); 237 } 238 239 JSValue jsAPIMangledNumber(ExecState* exec, double); 240 241 inline bool JSValue::isAPIMangledNumber() 242 { 243 ASSERT(isNumber()); 244 return JSImmediate::isImmediate(asValue()) ? false : asNumberCell(asValue())->isAPIMangledNumber(); 226 245 } 227 246
Note:
See TracChangeset
for help on using the changeset viewer.