libebml_ng
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
ebml::_slot_t Class Reference

#include <ebmlStruct.h>

Public Member Functions

 _slot_t ()
 
 _slot_t (const _slot_t &other)
 
 _slot_t (_slot_t &&other)
 
_slot_toperator= (const _slot_t &other)
 
_slot_toperator= (_slot_t &&other)
 
 ~_slot_t ()
 
void validate (const ebmlElement_sp &elem) const
 
void validate (const ebmlElement_l &elems) const
 
const slotSpec_tslotSpec () const
 
bool multi () const
 
size_t size () const
 
_slot_toperator= (const ebmlElement_sp &other)
 
_slot_toperator= (ebmlElement_sp &&other)
 
 operator ebmlElement_sp () const
 
 operator ebmlElement_sp & ()
 
 operator const ebmlElement_sp & () const
 
 operator c_ebmlElement_sp () const
 
 operator ebmlElement_l & ()
 
 operator c_ebmlElement_l () const
 
ebmlElement_spoperator[] (size_t index)
 
ebmlElement_spat (size_t index)
 
ebmlElement_spfront ()
 
ebmlElement_spback ()
 
ebmlElement_spinsert (size_t index, const ebmlElement_sp &elem)
 
ebmlElement_spinsert (size_t index, ebmlElement_sp &&elem)
 
void erase (size_t index)
 
ebmlElement_sppush_back (const ebmlElement_sp &elem)
 
ebmlElement_sppush_back (ebmlElement_sp &&elem)
 
ebmlElement_spemplace_back (const ebmlElement_sp &elem)
 
ebmlElement_spemplace_back (ebmlElement_sp &&elem)
 
c_ebmlElement_sp operator[] (size_t index) const
 
c_ebmlElement_sp at (size_t index) const
 
c_ebmlElement_sp front () const
 
c_ebmlElement_sp back () const
 
_slot_toperator= (const ebmlElement_l &other)
 
_slot_toperator= (ebmlElement_l &&other)
 
std::wstring repr () const
 

Protected Member Functions

 _slot_t (const slotSpec_t &spec)
 
 _slot_t (const slotSpec_t &spec, const ebmlElement_sp &elem)
 
 _slot_t (const slotSpec_t &spec, ebmlElement_sp &&elem)
 
 _slot_t (const slotSpec_t &spec, const ebmlElement_l &elems)
 
 _slot_t (const slotSpec_t &spec, ebmlElement_l &&elems)
 
 operator const ebmlElement_l & () const
 

Protected Attributes

const slotSpec_t_spec
 
union {
   ebmlElement_sp   elem
 
   ebmlElement_l   elems
 
}; 
 

Friends

class slot_t
 
class slot_t::iterator
 
class const_slot_t
 
class const_slot_t::iterator
 
class ebmlStruct
 

Constructor & Destructor Documentation

◆ _slot_t() [1/8]

ebml::_slot_t::_slot_t ( const slotSpec_t spec)
protected

◆ _slot_t() [2/8]

ebml::_slot_t::_slot_t ( const slotSpec_t spec,
const ebmlElement_sp elem 
)
protected

◆ _slot_t() [3/8]

ebml::_slot_t::_slot_t ( const slotSpec_t spec,
ebmlElement_sp &&  elem 
)
protected

◆ _slot_t() [4/8]

ebml::_slot_t::_slot_t ( const slotSpec_t spec,
const ebmlElement_l elems 
)
protected

◆ _slot_t() [5/8]

ebml::_slot_t::_slot_t ( const slotSpec_t spec,
ebmlElement_l &&  elems 
)
protected

◆ _slot_t() [6/8]

ebml::_slot_t::_slot_t ( )

◆ _slot_t() [7/8]

ebml::_slot_t::_slot_t ( const _slot_t other)

◆ _slot_t() [8/8]

ebml::_slot_t::_slot_t ( _slot_t &&  other)

◆ ~_slot_t()

ebml::_slot_t::~_slot_t ( )

Member Function Documentation

◆ at() [1/2]

ebmlElement_sp & ebml::_slot_t::at ( size_t  index)

◆ at() [2/2]

c_ebmlElement_sp ebml::_slot_t::at ( size_t  index) const

◆ back() [1/2]

ebmlElement_sp & ebml::_slot_t::back ( )

◆ back() [2/2]

c_ebmlElement_sp ebml::_slot_t::back ( ) const

◆ emplace_back() [1/2]

ebmlElement_sp & ebml::_slot_t::emplace_back ( const ebmlElement_sp elem)

◆ emplace_back() [2/2]

ebmlElement_sp & ebml::_slot_t::emplace_back ( ebmlElement_sp &&  elem)

◆ erase()

void ebml::_slot_t::erase ( size_t  index)

◆ front() [1/2]

ebmlElement_sp & ebml::_slot_t::front ( )

◆ front() [2/2]

c_ebmlElement_sp ebml::_slot_t::front ( ) const

◆ insert() [1/2]

ebmlElement_sp & ebml::_slot_t::insert ( size_t  index,
const ebmlElement_sp elem 
)

◆ insert() [2/2]

ebmlElement_sp & ebml::_slot_t::insert ( size_t  index,
ebmlElement_sp &&  elem 
)

◆ multi()

bool ebml::_slot_t::multi ( ) const

◆ operator c_ebmlElement_l()

ebml::_slot_t::operator c_ebmlElement_l ( ) const

◆ operator c_ebmlElement_sp()

ebml::_slot_t::operator c_ebmlElement_sp ( ) const

◆ operator const ebmlElement_l &()

ebml::_slot_t::operator const ebmlElement_l & ( ) const
protected

◆ operator const ebmlElement_sp &()

ebml::_slot_t::operator const ebmlElement_sp & ( ) const

◆ operator ebmlElement_l &()

ebml::_slot_t::operator ebmlElement_l & ( )

◆ operator ebmlElement_sp()

ebml::_slot_t::operator ebmlElement_sp ( ) const

◆ operator ebmlElement_sp &()

ebml::_slot_t::operator ebmlElement_sp & ( )

◆ operator=() [1/6]

_slot_t & ebml::_slot_t::operator= ( const _slot_t other)

◆ operator=() [2/6]

_slot_t & ebml::_slot_t::operator= ( _slot_t &&  other)

◆ operator=() [3/6]

_slot_t & ebml::_slot_t::operator= ( const ebmlElement_sp other)

◆ operator=() [4/6]

_slot_t & ebml::_slot_t::operator= ( ebmlElement_sp &&  other)

◆ operator=() [5/6]

_slot_t & ebml::_slot_t::operator= ( const ebmlElement_l other)

◆ operator=() [6/6]

_slot_t & ebml::_slot_t::operator= ( ebmlElement_l &&  other)

◆ operator[]() [1/2]

ebmlElement_sp & ebml::_slot_t::operator[] ( size_t  index)

◆ operator[]() [2/2]

c_ebmlElement_sp ebml::_slot_t::operator[] ( size_t  index) const

◆ push_back() [1/2]

ebmlElement_sp & ebml::_slot_t::push_back ( const ebmlElement_sp elem)

◆ push_back() [2/2]

ebmlElement_sp & ebml::_slot_t::push_back ( ebmlElement_sp &&  elem)

◆ repr()

std::wstring ebml::_slot_t::repr ( ) const

◆ size()

size_t ebml::_slot_t::size ( ) const

◆ slotSpec()

const slotSpec_t & ebml::_slot_t::slotSpec ( ) const

◆ validate() [1/2]

void ebml::_slot_t::validate ( const ebmlElement_sp elem) const

◆ validate() [2/2]

void ebml::_slot_t::validate ( const ebmlElement_l elems) const

Friends And Related Function Documentation

◆ const_slot_t

friend class const_slot_t
friend

◆ const_slot_t::iterator

friend class const_slot_t::iterator
friend

◆ ebmlStruct

friend class ebmlStruct
friend

◆ slot_t

friend class slot_t
friend

◆ slot_t::iterator

friend class slot_t::iterator
friend

Member Data Documentation

◆ @9

union { ... }

◆ _spec

const slotSpec_t* ebml::_slot_t::_spec
protected

◆ elem

ebmlElement_sp ebml::_slot_t::elem

◆ elems

ebmlElement_l ebml::_slot_t::elems

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