Gemmi C++ API
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
gemmi::MutableVectorSpan< Item > Struct Template Reference

#include <span.hpp>

Inheritance diagram for gemmi::MutableVectorSpan< Item >:
[legend]

Public Types

using vector_type = std::vector< typename Span< Item >::value_type >
 
using iterator = typename Span< Item >::iterator
 
- Public Types inherited from gemmi::Span< Item >
using iterator = Item *
 
using const_iterator = Item const *
 
using element_type = Item
 
using value_type = typename std::remove_cv< Item >::type
 

Public Member Functions

 MutableVectorSpan ()=default
 
 MutableVectorSpan (Span< Item > &&p, vector_type *v)
 
 MutableVectorSpan (vector_type &v, iterator begin, std::size_t n)
 
template<typename Iter >
MutableVectorSpan< Item > sub (Iter first, Iter last)
 
template<typename F >
MutableVectorSpan< Item > subspan (F &&func)
 
template<typename F >
MutableVectorSpan< const Item > subspan (F &&func) const
 
iterator insert (iterator pos, Item &&item)
 
void erase (iterator pos)
 
bool is_beginning () const
 
bool is_ending () const
 
- Public Member Functions inherited from gemmi::Span< Item >
 Span ()=default
 
 Span (iterator begin, std::size_t n)
 
template<typename T = Item>
 Span (const Span< value_type > &o, typename std::enable_if< std::is_const< T >::value >::type *=0)
 
void set_begin (iterator begin)
 
void set_size (std::size_t n)
 
const_iterator begin () const
 
const_iterator end () const
 
iterator begin ()
 
iterator end ()
 
Item & front ()
 
const Item & front () const
 
Item & back ()
 
const Item & back () const
 
const Item & operator[] (std::size_t i) const
 
Item & operator[] (std::size_t i)
 
Item & at (std::size_t i)
 
const Item & at (std::size_t i) const
 
std::size_t size () const
 
bool empty () const
 
 operator bool () const
 
template<typename Iter >
Span< Item > sub (Iter first, Iter last)
 
template<typename F , typename V = Item>
Span< Vsubspan (F &&func)
 
template<typename F >
Span< const value_typesubspan (F &&func) const
 
Spanchildren ()
 
const Spanchildren () const
 

Additional Inherited Members

- Public Attributes inherited from gemmi::Span< Item >
friend Span< const value_type >
 
friend MutableVectorSpan< value_type >
 

Detailed Description

template<typename Item>
struct gemmi::MutableVectorSpan< Item >

Definition at line 94 of file span.hpp.

Member Typedef Documentation

◆ vector_type

template<typename Item >
using gemmi::MutableVectorSpan< Item >::vector_type = std::vector<typename Span<Item>::value_type>

Definition at line 95 of file span.hpp.

◆ iterator

template<typename Item >
using gemmi::MutableVectorSpan< Item >::iterator = typename Span<Item>::iterator

Definition at line 96 of file span.hpp.

Constructor & Destructor Documentation

◆ MutableVectorSpan() [1/3]

template<typename Item >
gemmi::MutableVectorSpan< Item >::MutableVectorSpan ( )
default

◆ MutableVectorSpan() [2/3]

template<typename Item >
gemmi::MutableVectorSpan< Item >::MutableVectorSpan ( Span< Item > &&  p,
vector_type v 
)
inline

Definition at line 99 of file span.hpp.

◆ MutableVectorSpan() [3/3]

template<typename Item >
gemmi::MutableVectorSpan< Item >::MutableVectorSpan ( vector_type v,
iterator  begin,
std::size_t  n 
)
inline

Definition at line 101 of file span.hpp.

Member Function Documentation

◆ sub()

template<typename Item >
template<typename Iter >
MutableVectorSpan< Item > gemmi::MutableVectorSpan< Item >::sub ( Iter  first,
Iter  last 
)
inline

Definition at line 104 of file span.hpp.

◆ subspan() [1/2]

template<typename Item >
template<typename F >
MutableVectorSpan< Item > gemmi::MutableVectorSpan< Item >::subspan ( F &&  func)
inline

Definition at line 108 of file span.hpp.

◆ subspan() [2/2]

template<typename Item >
template<typename F >
MutableVectorSpan< const Item > gemmi::MutableVectorSpan< Item >::subspan ( F &&  func) const
inline

Definition at line 111 of file span.hpp.

◆ insert()

template<typename Item >
iterator gemmi::MutableVectorSpan< Item >::insert ( iterator  pos,
Item &&  item 
)
inline

Definition at line 115 of file span.hpp.

◆ erase()

template<typename Item >
void gemmi::MutableVectorSpan< Item >::erase ( iterator  pos)
inline

Definition at line 124 of file span.hpp.

◆ is_beginning()

template<typename Item >
bool gemmi::MutableVectorSpan< Item >::is_beginning ( ) const
inline

Definition at line 129 of file span.hpp.

◆ is_ending()

template<typename Item >
bool gemmi::MutableVectorSpan< Item >::is_ending ( ) const
inline

Definition at line 130 of file span.hpp.


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