← Back to context

Comment by tomcam

1 year ago

Oh! So the string itself is still on the heap? I assumed it was all on the stack.

No, let me try to explain differently. If `compact_str` was not used, then your normal `String` would take 24 bytes of stack space (regardless of the string size) + heap space. What `compact_str` is trying to do is not use heap when string content is less than 24.