Chromium Code Reviews| Index: base/memory/ref_counted_memory.h |
| diff --git a/base/memory/ref_counted_memory.h b/base/memory/ref_counted_memory.h |
| index d2987c5d21bd3d1cb1c6ebd6bf3c7f827b341491..d3ae3e25b0b77eae90aa323c14f9b7a80047707b 100644 |
| --- a/base/memory/ref_counted_memory.h |
| +++ b/base/memory/ref_counted_memory.h |
| @@ -30,6 +30,10 @@ class BASE_EXPORT RefCountedMemory |
| // Returns true if |other| is byte for byte equal. |
| bool Equals(const scoped_refptr<RefCountedMemory>& other) const; |
| + // Handy method to simplify calling front() with a reinterpret_cast. |
| + template<typename T> const T* front_as() const |
|
brettw
2014/01/13 21:52:17
Style nit: if everything doesn't fit on one line,
|
| + { return reinterpret_cast<const T*>(front()); } |
| + |
| protected: |
| friend class base::RefCountedThreadSafe<RefCountedMemory>; |
| RefCountedMemory(); |
| @@ -42,8 +46,9 @@ class BASE_EXPORT RefCountedStaticMemory : public RefCountedMemory { |
| public: |
| RefCountedStaticMemory() |
| : data_(NULL), length_(0) {} |
| - RefCountedStaticMemory(const unsigned char* data, size_t length) |
| - : data_(length ? data : NULL), length_(length) {} |
| + RefCountedStaticMemory(const void* data, size_t length) |
|
brettw
2014/01/13 21:52:17
I feel like void is right here. But then it seems
|
| + : data_(static_cast<const unsigned char*>(length ? data : NULL)), |
| + length_(length) {} |
| // Overridden from RefCountedMemory: |
| virtual const unsigned char* front() const OVERRIDE; |