Public Attributes | List of all members
linb::any::vtable_type Struct Reference

Base VTable specification. More...

Public Attributes

void(* copy )(const storage_union &src, storage_union &dest)
 
void(* destroy )(storage_union &) noexcept
 
void(* move )(storage_union &src, storage_union &dest) noexcept
 
void(* swap )(storage_union &lhs, storage_union &rhs) noexcept
 Exchanges the storage between lhs and rhs. More...
 
const std::type_info &(* type )() noexcept
 The type of the object this vtable is for. More...
 

Detailed Description

Base VTable specification.

Definition at line 177 of file any.hpp.

Member Data Documentation

◆ copy

void(* linb::any::vtable_type::copy) (const storage_union &src, storage_union &dest)

Copies the inner content of the src union into the yet unitialized dest union. As such, both inner objects will have the same state, but on separate memory locations.

Definition at line 191 of file any.hpp.

◆ destroy

void(* linb::any::vtable_type::destroy) (storage_union &) noexcept
noexcept

Destroys the object in the union. The state of the union after this call is unspecified, caller must ensure not to use src anymore.

Definition at line 187 of file any.hpp.

◆ move

void(* linb::any::vtable_type::move) (storage_union &src, storage_union &dest) noexcept
noexcept

Moves the storage from src to the yet unitialized dest union. The state of src after this call is unspecified, caller must ensure not to use src anymore.

Definition at line 195 of file any.hpp.

◆ swap

void(* linb::any::vtable_type::swap) (storage_union &lhs, storage_union &rhs) noexcept
noexcept

Exchanges the storage between lhs and rhs.

Definition at line 198 of file any.hpp.

◆ type

const std::type_info&(* linb::any::vtable_type::type) () noexcept
noexcept

The type of the object this vtable is for.

Definition at line 183 of file any.hpp.


The documentation for this struct was generated from the following file:


libnabo
Author(s): Stéphane Magnenat
autogenerated on Sat Mar 23 2024 02:52:25