FastLED 3.10.6
Loading...
Searching...
No Matches

◆ copy() [3/4]

void fl::basic_string::copy ( const char * str)

Definition at line 223 of file basic_string.cpp.hpp.

368 {
369 fl::size len = fl::strlen(str);
370 mLength = len;
371 if (len + 1 <= mInlineCapacity) {
372 if (!isInline()) {
373 mStorage.reset();
374 }
375 fl::memcpy(inlineBufferPtr(), str, len + 1);
376 } else {
377 if (hasHeapData() && heapData().get().use_count() <= 1) {
378 heapData()->copy(str, len);
379 return;
380 }
382 }
383}
NotNullStringHolderPtr & heapData() FL_NO_EXCEPT
bool hasHeapData() const FL_NO_EXCEPT
fl::size mInlineCapacity
char * inlineBufferPtr() FL_NO_EXCEPT
bool isInline() const FL_NO_EXCEPT
fl::variant< NotNullStringHolderPtr, ConstLiteral, ConstView > mStorage
fl::not_null< StringHolderPtr > NotNullStringHolderPtr
void * memcpy(void *dest, const void *src, size_t n) FL_NO_EXCEPT
size_t strlen(const char *s) FL_NO_EXCEPT
shared_ptr< T > make_shared(Args &&... args) FL_NO_EXCEPT
Definition shared_ptr.h:414
pair_element< I, T1, T2 >::type & get(pair< T1, T2 > &p) FL_NO_EXCEPT
Definition pair.h:115

References fl::basic_string::write().

Referenced by assign(), operator=(), operator=(), and substring().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: