vg
tools for working with variation graphs
Public Member Functions | Private Attributes | List of all members
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
 
IndirectVectorViewoperator= (const IndirectVectorView &other)=default
 
IndirectVectorViewoperator= (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: