Wt: linb::any::vtable_type Struct Reference

Wt 4.10.4

Loading...
Searching...
No Matches
Public Attributes | List of all members
linb::any::vtable_type Struct Reference

Base VTable specification. More...

## Public Attributes
const std::type_info &(* | type )() noexcept
| The type of the object this vtable is for.
void(* | destroy )(storage_union &) noexcept
void(* | copy )(const storage_union &src, storage_union &dest)
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.

## Detailed Description

Base VTable specification.

## 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.

## ◆ 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.

## ◆ 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.