std::experi...:do_allocate(3)

πŸ“¦ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

πŸ’– NAME πŸ’–

std::experimental::pmr::synchronized_pool_resource::do_allocate β€” yes bestie, that is the entire name, and we are living for it. This page is from the C++ Standard Libary manual, page std::experi...:do_allocate(3). No cap, we're doing this. 🫢

✨ Synopsis ✨

virtual void* do_allocate( std::size_t bytes, std::size_t alignment );

(library fundamentals TS) πŸ¦‹

Okay so this one literally allocates storage. That's the whole vibe. If the pool selected for a block of size bytes is unable to satisfy the request from its internal data structures, it calls allocate() on the upstream memory resource to obtain memory. Periodt. πŸ’…

If the size requested is larger than what the largest pool can handle, memory is allocated by calling allocate() on the upstream memory resource. No cap, it just goes upstream. 🌊

🌸 Return value 🌸

A pointer to allocated storage of at least bytes bytes in size, aligned to the specified alignment if such alignment is supported, and to alignof(std::max_align_t) otherwise. That's the tea. β˜•βœ¨

πŸ’€ Exceptions πŸ’€

Throws nothing unless calling allocate() on the upstream memory resource throws. That's it, that's the exception section. πŸ™ˆ

πŸ¦‹ See also πŸ¦‹

  • allocate β€” allocates memory; public member function of std::experimental::pmr::memory_resource
  • do_allocate β€” allocates memory; [virtual] virtual protected member function of std::experimental::pmr::memory_resource

πŸŽ€ Category πŸŽ€

  • Noindexed pages

And that's the whole page, bestie! This cutie came from http://cppreference.com, dated 2024.06.10, and it's the std::experi...:do_allocate(3) page. Stay slay, stay aligned. πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from