vg
tools for working with variation graphs
Loading...
Searching...
No Matches
vg::IndirectVectorView< Item > Class Template Reference

#include <utility.hpp>

Public Member Functions

 IndirectVectorView ()=default
 ~IndirectVectorView ()=default
 IndirectVectorView (const IndirectVectorView &other)=default
 IndirectVectorView (IndirectVectorView &&other)=default
IndirectVectorView & operator= (const IndirectVectorView &other)=default
IndirectVectorView & operator= (IndirectVectorView &&other)=default
void push_back (Item &item)
const Item & operator[] (size_t index) const
Item & operator[] (size_t index)
size_t size () const
bool empty () const

Private Attributes

vector< Item * > items

Detailed Description

template<class Item>
class vg::IndirectVectorView< Item >

A vector of pointers that is wrapped so that the vector elements are returned as references instead of pointers

Constructor & Destructor Documentation

◆ IndirectVectorView() [1/3]

template<class Item>
vg::IndirectVectorView< Item >::IndirectVectorView ( )
default

◆ ~IndirectVectorView()

template<class Item>
vg::IndirectVectorView< Item >::~IndirectVectorView ( )
default

◆ IndirectVectorView() [2/3]

template<class Item>
vg::IndirectVectorView< Item >::IndirectVectorView ( const IndirectVectorView< Item > & other)
default

◆ IndirectVectorView() [3/3]

template<class Item>
vg::IndirectVectorView< Item >::IndirectVectorView ( IndirectVectorView< Item > && other)
default

Member Function Documentation

◆ empty()

template<class Item>
bool vg::IndirectVectorView< Item >::empty ( ) const
inline

◆ operator=() [1/2]

template<class Item>
IndirectVectorView & vg::IndirectVectorView< Item >::operator= ( const IndirectVectorView< Item > & other)
default

◆ operator=() [2/2]

template<class Item>
IndirectVectorView & vg::IndirectVectorView< Item >::operator= ( IndirectVectorView< Item > && other)
default

◆ operator[]() [1/2]

template<class Item>
Item & vg::IndirectVectorView< Item >::operator[] ( size_t index)
inline

◆ operator[]() [2/2]

template<class Item>
const Item & vg::IndirectVectorView< Item >::operator[] ( size_t index) const
inline

◆ push_back()

template<class Item>
void vg::IndirectVectorView< Item >::push_back ( Item & item)
inline

◆ size()

template<class Item>
size_t vg::IndirectVectorView< Item >::size ( ) const
inline

Member Data Documentation

◆ items

template<class Item>
vector<Item*> vg::IndirectVectorView< Item >::items
private

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