| Index: runtime/vm/object.h
|
| ===================================================================
|
| --- runtime/vm/object.h (revision 23032)
|
| +++ runtime/vm/object.h (working copy)
|
| @@ -3927,9 +3927,14 @@
|
|
|
| static RawInteger* New(int64_t value, Heap::Space space = Heap::kNew);
|
|
|
| + // Check if an Integer exceeds 53 bits, and if so throw an exception.
|
| + static void CheckForFiftyThreeBitOverflow(const Integer& i, const char* msg);
|
| +
|
| virtual double AsDoubleValue() const;
|
| virtual int64_t AsInt64Value() const;
|
|
|
| + virtual bool FitsIn53Bits() const;
|
| +
|
| // Returns 0, -1 or 1.
|
| virtual int CompareWith(const Integer& other) const;
|
|
|
| @@ -3969,6 +3974,8 @@
|
| virtual double AsDoubleValue() const;
|
| virtual int64_t AsInt64Value() const;
|
|
|
| + virtual bool FitsIn53Bits() const { return true; }
|
| +
|
| virtual int CompareWith(const Integer& other) const;
|
|
|
| static intptr_t InstanceSize() { return 0; }
|
| @@ -4050,6 +4057,8 @@
|
| virtual double AsDoubleValue() const;
|
| virtual int64_t AsInt64Value() const;
|
|
|
| + virtual bool FitsIn53Bits() const;
|
| +
|
| virtual int CompareWith(const Integer& other) const;
|
|
|
| static intptr_t InstanceSize() {
|
| @@ -4087,6 +4096,8 @@
|
| virtual double AsDoubleValue() const;
|
| virtual int64_t AsInt64Value() const;
|
|
|
| + virtual bool FitsIn53Bits() const { return false; }
|
| +
|
| virtual int CompareWith(const Integer& other) const;
|
|
|
| static const intptr_t kBytesPerElement = kChunkSize;
|
|
|