Lines Matching refs:src
8 #include "src/utils/SkJSON.h"
14 #include "src/utils/SkUTF.h"
83 static void* MakeVector(const void* src, size_t size, SkArenaAlloc& alloc) {
89 sk_careful_memcpy(size_ptr + 1, src, size * sizeof(T));
94 ArrayValue::ArrayValue(const Value* src, size_t size, SkArenaAlloc& alloc) {
95 this->init_tagged_pointer(Tag::kArray, MakeVector<Value>(src, size, alloc));
119 FastString(const char* src, size_t size, const char* eos, SkArenaAlloc& alloc) {
120 SkASSERT(src <= eos);
123 this->initLongString(src, size, alloc);
128 // initFastShortString is faster (doh), but requires access to 6 chars past src.
129 if (src && src + 6 <= eos) {
130 this->initFastShortString(src, size);
132 this->initShortString(src, size);
142 void initLongString(const char* src, size_t size, SkArenaAlloc& alloc) {
145 this->init_tagged_pointer(Tag::kString, MakeVector<char, 1>(src, size, alloc));
151 void initShortString(const char* src, size_t size) {
155 sk_careful_memcpy(this->cast<char>(), src, size);
159 void initFastShortString(const char* src, size_t size) {
169 // on bytes [1..6] => the fastest way is to read8 @(src - 1) (always safe, because the
171 memcpy(s64, src - 1, 8);
187 StringValue::StringValue(const char* src, size_t size, SkArenaAlloc& alloc) {
188 new (this) FastString(src, size, src, alloc);
191 ObjectValue::ObjectValue(const Member* src, size_t size, SkArenaAlloc& alloc) {
192 this->init_tagged_pointer(Tag::kObject, MakeVector<Member>(src, size, alloc));