Loading...
Searching...
No Matches
osmium::memory::Item Class Reference

`#include <item.hpp>`

Inheritance diagram for osmium::memory::Item:
[legend]
Collaboration diagram for osmium::memory::Item:
[legend]

## Public Member Functions

| Item (const Item &)=delete
Item & | operator= (const Item &)=delete
| Item (Item &&)=delete
Item & | operator= (Item &&)=delete
| ~Item () noexcept=default
unsigned char * | next () noexcept
const unsigned char * | next () const noexcept
item_size_type | byte_size () const noexcept
item_size_type | padded_size () const
item_type | type () const noexcept
bool | removed () const noexcept
void | set_removed (const bool removed) noexcept
diff_indicator_type | diff () const noexcept
char | diff_as_char () const noexcept
void | set_diff (const diff_indicator_type diff) noexcept

## Static Public Member Functions

static constexpr bool | is_compatible_to (osmium::item_type) noexcept

## Protected Member Functions

| Item (item_size_type size=0, item_type type=item_type{}) noexcept
Item & | set_type (const item_type item_type) noexcept

## Private Member Functions

Item & | add_size (const item_size_type size) noexcept

## Private Attributes

item_size_type | m_size
item_type | m_type
uint16_t | m_removed: 1
uint16_t | m_diff: 2
uint16_t | m_padding: 13

## Friends

template<typename TMember >
class | CollectionIterator
template<typename TMember >
class | ItemIterator
class | osmium::builder::Builder

## Constructor & Destructor Documentation

## Item() [1/3]

osmium::memory::Item::Item | ( | item_size_type | size = `0`,
|  | item_type | type = `item_type{}`
| ) |  |

inline explicit protected noexcept

## Item() [2/3]

osmium::memory::Item::Item | ( | const Item & |  | ) |

delete

## Item() [3/3]

osmium::memory::Item::Item | ( | Item && |  | ) |

delete

## ~Item()

osmium::memory::Item::~Item | ( |  | ) |

default noexcept

## Member Function Documentation

## add_size()

Item & osmium::memory::Item::add_size | ( | const item_size_type | size | ) |

inline private noexcept

## byte_size()

item_size_type osmium::memory::Item::byte_size | ( |  | ) | const

inline noexcept

## diff()

diff_indicator_type osmium::memory::Item::diff | ( |  | ) | const

inline noexcept

## diff_as_char()

char osmium::memory::Item::diff_as_char | ( |  | ) | const

inline noexcept

## is_compatible_to()

static constexpr bool osmium::memory::Item::is_compatible_to | ( | osmium::item_type |  | ) |

inline static constexpr noexcept

## next() [1/2]

const unsigned char * osmium::memory::Item::next | ( |  | ) | const

inline noexcept

## next() [2/2]

unsigned char * osmium::memory::Item::next | ( |  | ) |

inline noexcept

## operator=() [1/2]

Item & osmium::memory::Item::operator= | ( | const Item & |  | ) |

delete

## operator=() [2/2]

Item & osmium::memory::Item::operator= | ( | Item && |  | ) |

delete

## padded_size()

item_size_type osmium::memory::Item::padded_size | ( |  | ) | const

inline

## removed()

bool osmium::memory::Item::removed | ( |  | ) | const

inline noexcept

## set_diff()

void osmium::memory::Item::set_diff | ( | const diff_indicator_type | diff | ) |

inline noexcept

## set_removed()

void osmium::memory::Item::set_removed | ( | const bool | removed | ) |

inline noexcept

## set_type()

Item & osmium::memory::Item::set_type | ( | const item_type | item_type | ) |

inline protected noexcept

## type()

item_type osmium::memory::Item::type | ( |  | ) | const

inline noexcept

## Friends And Related Symbol Documentation

## CollectionIterator

template<typename TMember >

friend class CollectionIterator

friend

## ItemIterator

template<typename TMember >

friend class ItemIterator

friend

## osmium::builder::Builder

friend class osmium::builder::Builder

friend

## Member Data Documentation

## m_diff

uint16_t osmium::memory::Item::m_diff

private

## m_padding

uint16_t osmium::memory::Item::m_padding

private

## m_removed

uint16_t osmium::memory::Item::m_removed

private

## m_size

item_size_type osmium::memory::Item::m_size

private

## m_type

item_type osmium::memory::Item::m_type

private

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

- include/osmium/memory/item.hpp