Lines Matching refs:fPtr

244     explicit SkAutoTMalloc(T* ptr = nullptr) : fPtr(ptr) {}
248 : fPtr(count ? (T*)sk_malloc_throw(count, sizeof(T)) : nullptr) {}
255 fPtr.reset(count ? (T*)sk_realloc_throw(fPtr.release(), count * sizeof(T)) : nullptr);
260 fPtr.reset(count ? (T*)sk_malloc_throw(count, sizeof(T)) : nullptr);
264 T* get() const { return fPtr.get(); }
266 operator T*() { return fPtr.get(); }
268 operator const T*() const { return fPtr.get(); }
270 T& operator[](int index) { return fPtr.get()[index]; }
272 const T& operator[](int index) const { return fPtr.get()[index]; }
275 const T* data() const { return fPtr.get(); }
276 T* data() { return fPtr.get(); }
283 T* release() { return fPtr.release(); }
286 std::unique_ptr<T, SkFunctionWrapper<void(void*), sk_free>> fPtr;
295 SkAutoSTMalloc() : fPtr(fTStorage) {}
299 fPtr = (T*)sk_malloc_throw(count, sizeof(T));
301 fPtr = fTStorage;
303 fPtr = nullptr;
313 if (fPtr != fTStorage) {
314 sk_free(fPtr);
320 if (fPtr != fTStorage) {
321 sk_free(fPtr);
324 fPtr = (T*)sk_malloc_throw(count, sizeof(T));
326 fPtr = fTStorage;
328 fPtr = nullptr;
330 return fPtr;
333 T* get() const { return fPtr; }
336 return fPtr;
340 return fPtr;
344 return fPtr[index];
348 return fPtr[index];
352 const T* data() const { return fPtr; }
353 T* data() { return fPtr; }
358 if (fPtr == fTStorage) {
359 fPtr = (T*)sk_malloc_throw(count, sizeof(T));
360 memcpy((void*)fPtr, fTStorage, kCount * sizeof(T));
362 fPtr = (T*)sk_realloc_throw(fPtr, count, sizeof(T));
365 if (fPtr != fTStorage) {
366 fPtr = (T*)sk_realloc_throw(fPtr, count, sizeof(T));
387 T* fPtr;