flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY

#include <slhaea.h>

Collaboration diagram for SLHAea::Coll:
Collaboration graph

Classes

struct  key_matches
 
struct  key_matches_block_def
 

Public Types

typedef impl_type::const_iterator const_iterator
 
typedef impl_type::const_pointer const_pointer
 
typedef const Blockconst_reference
 
typedef impl_type::const_reverse_iterator const_reverse_iterator
 
typedef impl_type::difference_type difference_type
 
typedef impl_type::iterator iterator
 
typedef std::string key_type
 
typedef impl_type::pointer pointer
 
typedef Blockreference
 
typedef impl_type::reverse_iterator reverse_iterator
 
typedef impl_type::size_type size_type
 
typedef Block value_type
 

Public Member Functions

reference at (const key_type &blockName)
 Locates a Block in the Coll. More...
 
const_reference at (const key_type &blockName) const
 Locates a Block in the Coll. More...
 
reference at (const value_type::key_type &key)
 Locates a Block in the Coll. More...
 
const_reference at (const value_type::key_type &key) const
 Locates a Block in the Coll. More...
 
reference back ()
 
const_reference back () const
 
iterator begin ()
 
const_iterator begin () const
 
reference block (const Key &key)
 Accesses a Block in the Coll. More...
 
const_reference block (const Key &key) const
 Accesses a Block in the Coll. More...
 
const_iterator cbegin () const
 
const_iterator cend () const
 
void clear ()
 
 Coll ()
 
 Coll (std::istream &is)
 Constructs a Coll with content from an input stream. More...
 
void comment ()
 Comments all Blocks in the Coll. More...
 
size_type count (const key_type &blockName) const
 Counts all Blocks with a given name. More...
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator crend () const
 
bool empty () const
 
iterator end ()
 
const_iterator end () const
 
size_type erase (const key_type &blockName)
 Erases all Blocks with a given name. More...
 
iterator erase (iterator first, iterator last)
 Erases a range of elements. More...
 
iterator erase (iterator position)
 Erases element at given position. More...
 
iterator erase_first (const key_type &blockName)
 Erases first Block with a given name. More...
 
iterator erase_last (const key_type &blockName)
 Erases last Block with a given name. More...
 
Line::reference field (const Key &key)
 Accesses a single field in the Coll. More...
 
Line::const_reference field (const Key &key) const
 Accesses a single field in the Coll. More...
 
iterator find (const key_type &blockName)
 Tries to locate a Block in the Coll. More...
 
const_iterator find (const key_type &blockName) const
 Tries to locate a Block in the Coll. More...
 
iterator find (const value_type::key_type &key)
 Tries to locate a Block in the Coll. More...
 
const_iterator find (const value_type::key_type &key) const
 Tries to locate a Block in the Coll. More...
 
reference front ()
 
const_reference front () const
 
iterator insert (iterator position, const value_type &block)
 Inserts a Block before given position. More...
 
template<class InputIterator >
void insert (iterator position, InputIterator first, InputIterator last)
 Inserts a range into the Coll. More...
 
Block::reference line (const Key &key)
 Accesses a single Line in the Coll. More...
 
Block::const_reference line (const Key &key) const
 Accesses a single Line in the Coll. More...
 
size_type max_size () const
 
reference operator[] (const key_type &blockName)
 Locates a Block in the Coll. More...
 
void pop_back ()
 
void push_back (const std::string &blockString)
 Adds a Block to the end of the Coll. More...
 
void push_back (const value_type &block)
 Adds a Block to the end of the Coll. More...
 
void push_front (const std::string &blockString)
 Adds a Block to the begin of the Coll. More...
 
void push_front (const value_type &block)
 Adds a Block to the begin of the Coll. More...
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
Collread (std::istream &is)
 Assigns content from an input stream to the Coll. More...
 
void reformat ()
 Reformats all Blocks in the Coll. More...
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
size_type size () const
 
std::string str () const
 
Collstr (const std::string &coll)
 Assigns content from a string to the Coll. More...
 
void swap (Coll &coll)
 Swaps data with another Coll. More...
 
void uncomment ()
 Uncomments all Blocks in the Coll. More...
 

Static Public Member Functions

template<class InputIterator >
static InputIterator find (InputIterator first, InputIterator last, const key_type &blockName)
 Tries to locate a Block in a range. More...
 
template<class InputIterator >
static InputIterator find (InputIterator first, InputIterator last, const value_type::key_type &key)
 Tries to locate a Block in a range. More...
 
static Coll from_str (const std::string &coll)
 Constructs a Coll with content from a string. More...
 

Private Types

typedef std::deque< Blockimpl_type
 

Private Member Functions

iterator erase_if_empty (const key_type &blockName, const size_type &offset=0)
 
pointer push_back_named_block (const key_type &blockName)
 

Private Attributes

impl_type impl_
 

Detailed Description

Container of Blocks that resembles a complete SLHA structure. This class is a container of Blocks that resembles a complete SLHA structure. Its name is an abbreviation of "collection" since it is a collection of Blocks. The elements of Coll objects can be accessed via their names (which are always compared case-insensitive) with the operator[]() and at() functions and access to single fields, Lines and Blocks via the Key type is provided by the field(), line() and block() functions. To fill this container, the functions read() or str() can be used which read data from an input stream or a string, respectively.

Definition at line 1613 of file slhaea.h.

Member Typedef Documentation

◆ const_iterator

typedef impl_type::const_iterator SLHAea::Coll::const_iterator

Definition at line 1624 of file slhaea.h.

◆ const_pointer

typedef impl_type::const_pointer SLHAea::Coll::const_pointer

Definition at line 1628 of file slhaea.h.

◆ const_reference

Definition at line 1622 of file slhaea.h.

◆ const_reverse_iterator

typedef impl_type::const_reverse_iterator SLHAea::Coll::const_reverse_iterator

Definition at line 1626 of file slhaea.h.

◆ difference_type

typedef impl_type::difference_type SLHAea::Coll::difference_type

Definition at line 1629 of file slhaea.h.

◆ impl_type

typedef std::deque<Block> SLHAea::Coll::impl_type
private

Definition at line 1616 of file slhaea.h.

◆ iterator

typedef impl_type::iterator SLHAea::Coll::iterator

Definition at line 1623 of file slhaea.h.

◆ key_type

typedef std::string SLHAea::Coll::key_type

Definition at line 1619 of file slhaea.h.

◆ pointer

typedef impl_type::pointer SLHAea::Coll::pointer

Definition at line 1627 of file slhaea.h.

◆ reference

Definition at line 1621 of file slhaea.h.

◆ reverse_iterator

typedef impl_type::reverse_iterator SLHAea::Coll::reverse_iterator

Definition at line 1625 of file slhaea.h.

◆ size_type

typedef impl_type::size_type SLHAea::Coll::size_type

Definition at line 1630 of file slhaea.h.

◆ value_type

Definition at line 1620 of file slhaea.h.

Constructor & Destructor Documentation

◆ Coll() [1/2]

SLHAea::Coll::Coll ( )
inline

Constructs an empty Coll.

Definition at line 1637 of file slhaea.h.

Referenced by from_str().

◆ Coll() [2/2]

SLHAea::Coll::Coll ( std::istream &  is)
inlineexplicit

Constructs a Coll with content from an input stream.

Parameters
isInput stream to read content from.
See also
read()

Definition at line 1645 of file slhaea.h.

References read().

Member Function Documentation

◆ at() [1/4]

reference SLHAea::Coll::at ( const key_type blockName)
inline

Locates a Block in the Coll.

Parameters
blockNameName of the Block to be located.
Returns
Read/write reference to sought-after Block.
Exceptions
std::out_of_rangeIf no Block with the name blockName exists.

Definition at line 1742 of file slhaea.h.

References block(), end(), and find().

Referenced by block().

◆ at() [2/4]

const_reference SLHAea::Coll::at ( const key_type blockName) const
inline

Locates a Block in the Coll.

Parameters
blockNameName of the Block to be located.
Returns
Read-only (constant) reference to sought-after Block.
Exceptions
std::out_of_rangeIf no Block with the name blockName exists.

Definition at line 1758 of file slhaea.h.

References block(), end(), and find().

◆ at() [3/4]

reference SLHAea::Coll::at ( const value_type::key_type key)
inline

Locates a Block in the Coll.

Parameters
keyFirst strings of the block definition of the Block to be located.
Returns
Read/write reference to sought-after Block.
Exceptions
std::out_of_rangeIf key does not match any block definition.

This functions takes a vector of strings and locates the Block whose first strings of the block definition are equal to the strings in key. If no such Block exists, std::out_of_range is thrown.

Definition at line 1780 of file slhaea.h.

References block(), end(), and find().

◆ at() [4/4]

const_reference SLHAea::Coll::at ( const value_type::key_type key) const
inline

Locates a Block in the Coll.

Parameters
keyFirst strings of the block definition of the Block to be located.
Returns
Read-only (constant) reference to sought-after Block.
Exceptions
std::out_of_rangeIf key does not match any block definition.

This functions takes a vector of strings and locates the Block whose first strings of the block definition are equal to the strings in key. If no such Block exists, std::out_of_range is thrown.

Definition at line 1803 of file slhaea.h.

References block(), end(), and find().

◆ back() [1/2]

reference SLHAea::Coll::back ( )
inline

Returns a read/write reference to the last element of the Coll.

Definition at line 1831 of file slhaea.h.

References impl_.

Referenced by operator[](), and push_back_named_block().

◆ back() [2/2]

const_reference SLHAea::Coll::back ( ) const
inline

Returns a read-only (constant) reference to the last element of the Coll.

Definition at line 1839 of file slhaea.h.

References impl_.

◆ begin() [1/2]

iterator SLHAea::Coll::begin ( )
inline

Returns a read/write iterator that points to the first element in the Coll. Iteration is done in ordinary element order.

Definition at line 1910 of file slhaea.h.

References impl_.

Referenced by comment(), count(), erase(), erase_if_empty(), find(), SLHAea::operator<(), SLHAea::operator<<(), SLHAea::operator==(), reformat(), and uncomment().

◆ begin() [2/2]

const_iterator SLHAea::Coll::begin ( ) const
inline

Returns a read-only (constant) iterator that points to the first element in the Coll. Iteration is done in ordinary element order.

Definition at line 1919 of file slhaea.h.

References impl_.

◆ block() [1/2]

Coll::reference SLHAea::Coll::block ( const Key key)
inline

Accesses a Block in the Coll.

Parameters
keyKey that refers to the Block that should be accessed.
Returns
Read/write reference to the Block referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing Block.

Definition at line 2508 of file slhaea.h.

References at().

Referenced by at(), erase(), erase_first(), erase_if_empty(), erase_last(), insert(), line(), SLHAea::Coll::key_matches::operator()(), SLHAea::Coll::key_matches_block_def::operator()(), operator[](), push_back(), push_front(), and read().

◆ block() [2/2]

Coll::const_reference SLHAea::Coll::block ( const Key key) const
inline

Accesses a Block in the Coll.

Parameters
keyKey that refers to the Block that should be accessed.
Returns
Read-only (constant) reference to the Block referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing Block.

Definition at line 2512 of file slhaea.h.

References at().

◆ cbegin()

const_iterator SLHAea::Coll::cbegin ( ) const
inline

Returns a read-only (constant) iterator that points to the first element in the Coll. Iteration is done in ordinary element order.

Definition at line 1928 of file slhaea.h.

References impl_.

◆ cend()

const_iterator SLHAea::Coll::cend ( ) const
inline

Returns a read-only (constant) iterator that points one past the last element in the Coll. Iteration is done in ordinary element order.

Definition at line 1955 of file slhaea.h.

References impl_.

◆ clear()

void SLHAea::Coll::clear ( )
inline

Erases all the elements in the Coll.

Definition at line 2323 of file slhaea.h.

References impl_.

Referenced by str().

◆ comment()

void SLHAea::Coll::comment ( )
inline

Comments all Blocks in the Coll.

See also
Block::comment()

Definition at line 2339 of file slhaea.h.

References begin(), SLHAea::Block::comment(), end(), flexiblesusy::detail::for_each(), and MEM_FN.

◆ count()

size_type SLHAea::Coll::count ( const key_type blockName) const
inline

Counts all Blocks with a given name.

Parameters
blockNameName of the Blocks that will be counted.
Returns
Number of blocks whose name equals blockName.

Definition at line 2120 of file slhaea.h.

References begin(), and end().

◆ crbegin()

const_reverse_iterator SLHAea::Coll::crbegin ( ) const
inline

Returns a read-only (constant) reverse iterator that points to the last element in the Coll. Iteration is done in reverse element order.

Definition at line 1981 of file slhaea.h.

References impl_.

◆ crend()

const_reverse_iterator SLHAea::Coll::crend ( ) const
inline

Returns a read-only (constant) reverse iterator that points to one before the first element in the Coll. Iteration is done in reverse element order.

Definition at line 2008 of file slhaea.h.

References impl_.

◆ empty()

bool SLHAea::Coll::empty ( ) const
inline

Returns true if the Coll is empty.

Definition at line 2136 of file slhaea.h.

References impl_.

◆ end() [1/2]

iterator SLHAea::Coll::end ( )
inline

Returns a read/write iterator that points one past the last element in the Coll. Iteration is done in ordinary element order.

Definition at line 1937 of file slhaea.h.

References impl_.

Referenced by at(), comment(), count(), erase(), erase_first(), erase_if_empty(), erase_last(), find(), SLHAea::operator<(), SLHAea::operator<<(), SLHAea::operator==(), operator[](), reformat(), and uncomment().

◆ end() [2/2]

const_iterator SLHAea::Coll::end ( ) const
inline

Returns a read-only (constant) iterator that points one past the last element in the Coll. Iteration is done in ordinary element order.

Definition at line 1946 of file slhaea.h.

References impl_.

◆ erase() [1/3]

size_type SLHAea::Coll::erase ( const key_type blockName)
inline

Erases all Blocks with a given name.

Parameters
blockNameName of the Blocks to be erased.
Returns
The number of Blocks erased.

Definition at line 2296 of file slhaea.h.

References begin(), block(), end(), and erase().

◆ erase() [2/3]

iterator SLHAea::Coll::erase ( iterator  first,
iterator  last 
)
inline

Erases a range of elements.

Parameters
firstIterator pointing to the first element to be erased.
lastIterator pointing to one past the last element to be erased.
Returns
Iterator pointing to the element pointed to by last prior to erasing (or end()).

This function erases the elements in the range [first, last) and shortens the Coll accordingly.

Definition at line 2253 of file slhaea.h.

References impl_.

◆ erase() [3/3]

iterator SLHAea::Coll::erase ( iterator  position)
inline

Erases element at given position.

Parameters
positionIterator pointing to the element to be erased.
Returns
Iterator pointing to the next element (or end()).

This function erases the element at the given position and thus shortens the Coll by one.

Definition at line 2238 of file slhaea.h.

References impl_.

Referenced by erase(), erase_first(), erase_if_empty(), and erase_last().

◆ erase_first()

iterator SLHAea::Coll::erase_first ( const key_type blockName)
inline

Erases first Block with a given name.

Parameters
blockNameName of the Block to be erased.
Returns
Iterator pointing to the next element (or end()).

This function takes a key and erases the first Block whose name matches blockName. If the Coll contains such Block, the function returns an iterator pointing to the next element (or end()). If no such Block exists, end() is returned.

Definition at line 2267 of file slhaea.h.

References block(), end(), erase(), and find().

◆ erase_if_empty()

iterator SLHAea::Coll::erase_if_empty ( const key_type blockName,
const size_type offset = 0 
)
inlineprivate

Definition at line 2405 of file slhaea.h.

References begin(), block(), SLHAea::Block::empty(), end(), erase(), and find().

Referenced by read().

◆ erase_last()

iterator SLHAea::Coll::erase_last ( const key_type blockName)
inline

Erases last Block with a given name.

Parameters
blockNameName of the Block to be erased.
Returns
Iterator pointing to the next element (or end()).

This function takes a key and erases the last Block whose name matches blockName. If the Coll contains such Block, the function returns an iterator pointing to the next element (or end()). If no such Block exists, end() is returned.

Definition at line 2284 of file slhaea.h.

References block(), end(), erase(), find(), rbegin(), and rend().

◆ field() [1/2]

Line::reference SLHAea::Coll::field ( const Key key)
inline

Accesses a single field in the Coll.

Parameters
keyKey that refers to the field that should be accessed.
Returns
Read/write reference to the field referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing field.

Definition at line 2524 of file slhaea.h.

References SLHAea::Line::at(), and line().

◆ field() [2/2]

Line::const_reference SLHAea::Coll::field ( const Key key) const
inline

Accesses a single field in the Coll.

Parameters
keyKey that refers to the field that should be accessed.
Returns
Read-only (constant) reference to the field referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing field.

Definition at line 2528 of file slhaea.h.

References SLHAea::Line::at(), and line().

◆ find() [1/6]

iterator SLHAea::Coll::find ( const key_type blockName)
inline

Tries to locate a Block in the Coll.

Parameters
blockNameName of the Block to be located.
Returns
Read/write iterator pointing to sought-after element, or end() if not found.

This function takes a key and tries to locate the Block whose name matches blockName. If successful the function returns a read/write iterator pointing to the sought after Block. If unsuccessful it returns end().

Definition at line 2024 of file slhaea.h.

References begin(), end(), and flexiblesusy::meta::find_if().

Referenced by at(), erase_first(), erase_if_empty(), erase_last(), operator[](), flexiblesusy::SLHA_io::read_block(), flexiblesusy::SLHA_io::read_entry(), flexiblesusy::detail::read_matrix_(), flexiblesusy::SLHA_io::read_scale(), and flexiblesusy::detail::read_vector_().

◆ find() [2/6]

const_iterator SLHAea::Coll::find ( const key_type blockName) const
inline

Tries to locate a Block in the Coll.

Parameters
blockNameName of the Block to be located.
Returns
Read-only (constant) iterator pointing to sought-after element, or end() const if not found.

This function takes a key and tries to locate the Block whose name matches blockName. If successful the function returns a read-only (constant) iterator pointing to the sought after Block. If unsuccessful it returns end() const.

Definition at line 2039 of file slhaea.h.

References begin(), end(), and flexiblesusy::meta::find_if().

◆ find() [3/6]

iterator SLHAea::Coll::find ( const value_type::key_type key)
inline

Tries to locate a Block in the Coll.

Parameters
keyFirst strings of the block definition of the Block to be located.
Returns
Read/write iterator pointing to sought-after element, or end() if not found.

This functions takes a vector of strings and tries to locate the Block whose first strings of the block definition are equal to the strings in key. If successful the function returns a read/write iterator pointing to the sought after Block. If unsuccessful it returns end().

Definition at line 2073 of file slhaea.h.

References begin(), end(), and flexiblesusy::meta::find_if().

◆ find() [4/6]

const_iterator SLHAea::Coll::find ( const value_type::key_type key) const
inline

Tries to locate a Block in the Coll.

Parameters
keyFirst strings of the block definition of the Block to be located.
Returns
Read-only (constant) iterator pointing to sought-after element, or end() const if not found.

This functions takes a vector of strings and tries to locate the Block whose first strings of the block definition are equal to the strings in key. If successful the function returns a read-only (constant) iterator pointing to the sought after Block. If unsuccessful it returns end() const.

Definition at line 2090 of file slhaea.h.

References begin(), end(), and flexiblesusy::meta::find_if().

◆ find() [5/6]

template<class InputIterator >
static InputIterator SLHAea::Coll::find ( InputIterator  first,
InputIterator  last,
const key_type blockName 
)
inlinestatic

Tries to locate a Block in a range.

Parameters
first,lastInput iterators to the initial and final positions in a sequence.
blockNameName of the Block to be located.
Returns
Iterator pointing to sought-after element, or last if not found.

This function tries to locate in the range [first, last) the Block whose name matches blockName. If successful the function returns an iterator pointing to the sought after Block. If unsuccessful it returns last.

Definition at line 2056 of file slhaea.h.

References flexiblesusy::meta::find_if().

◆ find() [6/6]

template<class InputIterator >
static InputIterator SLHAea::Coll::find ( InputIterator  first,
InputIterator  last,
const value_type::key_type key 
)
inlinestatic

Tries to locate a Block in a range.

Parameters
first,lastInput iterators to the initial and final positions in a sequence.
keyFirst strings of the block definition of the Block to be located.
Returns
Iterator pointing to sought-after element, or last if not found.

This function tries to locate in the range [first, last) the Block whose first strings of the block definition are equal to the strings in key. If successful the function returns an iterator pointing to the sought after Block. If unsuccessful it returns last.

Definition at line 2109 of file slhaea.h.

References flexiblesusy::meta::find_if().

◆ from_str()

static Coll SLHAea::Coll::from_str ( const std::string &  coll)
inlinestatic

Constructs a Coll with content from a string.

Parameters
collString to read content from.

Definition at line 1653 of file slhaea.h.

References Coll().

◆ front() [1/2]

reference SLHAea::Coll::front ( )
inline

Returns a read/write reference to the first element of the Coll.

Definition at line 1816 of file slhaea.h.

References impl_.

◆ front() [2/2]

const_reference SLHAea::Coll::front ( ) const
inline

Returns a read-only (constant) reference to the first element of the Coll.

Definition at line 1824 of file slhaea.h.

References impl_.

◆ insert() [1/2]

iterator SLHAea::Coll::insert ( iterator  position,
const value_type block 
)
inline

Inserts a Block before given position.

Parameters
positionIterator into the Coll.
blockBlock to be inserted.
Returns
Iterator pointing to the inserted element.

This function inserts a copy of block before the specified position and thus enlarges the Coll by one.

Definition at line 2212 of file slhaea.h.

References block(), and impl_.

◆ insert() [2/2]

template<class InputIterator >
void SLHAea::Coll::insert ( iterator  position,
InputIterator  first,
InputIterator  last 
)
inline

Inserts a range into the Coll.

Parameters
positionIterator into the Coll.
first,lastInput iterators to the initial and final positions in a sequence.

This function inserts copies of the Blocks in the range [first, last) into the Coll before the specified position and thus enlarges the Coll accordingly.

Definition at line 2226 of file slhaea.h.

References impl_.

◆ line() [1/2]

Block::reference SLHAea::Coll::line ( const Key key)
inline

Accesses a single Line in the Coll.

Parameters
keyKey that refers to the Line that should be accessed.
Returns
Read/write reference to the Line referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing Line.

Definition at line 2516 of file slhaea.h.

References SLHAea::Block::at(), and block().

Referenced by field(), and read().

◆ line() [2/2]

Block::const_reference SLHAea::Coll::line ( const Key key) const
inline

Accesses a single Line in the Coll.

Parameters
keyKey that refers to the Line that should be accessed.
Returns
Read-only (constant) reference to the Line referred to by key.
Exceptions
std::out_of_rangeIf key refers to a non-existing Line.

Definition at line 2520 of file slhaea.h.

References SLHAea::Block::at(), and block().

◆ max_size()

size_type SLHAea::Coll::max_size ( ) const
inline

Returns the size() of the largest possible Coll.

Definition at line 2131 of file slhaea.h.

References impl_.

◆ operator[]()

reference SLHAea::Coll::operator[] ( const key_type blockName)
inline

Locates a Block in the Coll.

Parameters
blockNameName of the Block to be located.
Returns
Read/write reference to sought-after Block.

This function locates the first Block whose name equals blockName. If no such Block is present, an empty Block with this name is added to the end of the Coll and a reference to it is then returned.

Definition at line 1725 of file slhaea.h.

References back(), block(), end(), find(), and push_back().

◆ pop_back()

void SLHAea::Coll::pop_back ( )
inline

Removes the last element. This function shrinks the size() of the Coll by one.

Definition at line 2199 of file slhaea.h.

References impl_.

◆ push_back() [1/2]

void SLHAea::Coll::push_back ( const std::string &  blockString)
inline

Adds a Block to the end of the Coll.

Parameters
blockStringString that is used to construct the Block that will be added.

This function creates an element at the end of the Coll and assigns the Block that is constructed from blockString to it.

Definition at line 2160 of file slhaea.h.

References block(), impl_, and SLHAea::Block::str().

◆ push_back() [2/2]

void SLHAea::Coll::push_back ( const value_type block)
inline

Adds a Block to the end of the Coll.

Parameters
blockBlock to be added.

This function creates an element at the end of the Coll and assigns the given block to it.

Definition at line 2148 of file slhaea.h.

References block(), and impl_.

Referenced by operator[](), and push_back_named_block().

◆ push_back_named_block()

pointer SLHAea::Coll::push_back_named_block ( const key_type blockName)
inlineprivate

Definition at line 2398 of file slhaea.h.

References back(), and push_back().

Referenced by read().

◆ push_front() [1/2]

void SLHAea::Coll::push_front ( const std::string &  blockString)
inline

Adds a Block to the begin of the Coll.

Parameters
blockStringString that is used to construct the Block that will be added.

This function creates an element at the begin of the Coll and assigns the Block that is constructed from blockString to it.

Definition at line 2187 of file slhaea.h.

References block(), impl_, and SLHAea::Block::str().

◆ push_front() [2/2]

void SLHAea::Coll::push_front ( const value_type block)
inline

Adds a Block to the begin of the Coll.

Parameters
blockBlock to be added.

This function creates an element at the begin of the Coll and assigns the given block to it.

Definition at line 2175 of file slhaea.h.

References block(), and impl_.

◆ rbegin() [1/2]

reverse_iterator SLHAea::Coll::rbegin ( )
inline

Returns a read/write reverse iterator that points to the last element in the Coll. Iteration is done in reverse element order.

Definition at line 1963 of file slhaea.h.

References impl_.

Referenced by erase_last().

◆ rbegin() [2/2]

const_reverse_iterator SLHAea::Coll::rbegin ( ) const
inline

Returns a read-only (constant) reverse iterator that points to the last element in the Coll. Iteration is done in reverse element order.

Definition at line 1972 of file slhaea.h.

References impl_.

◆ read()

Coll & SLHAea::Coll::read ( std::istream &  is)
inline

Assigns content from an input stream to the Coll.

Parameters
isInput stream to read content from.
Returns
Reference to *this.

This function reads non-empty lines from is, transforms them into Lines, which are collected into the corresponding Blocks that are added to the Coll.

Definition at line 1669 of file slhaea.h.

References block(), erase_if_empty(), SLHAea::detail::is_all_whitespace(), SLHAea::Line::is_block_def(), line(), SLHAea::Block::push_back(), push_back_named_block(), size(), and SLHAea::Line::str().

Referenced by Coll(), SLHAea::operator>>(), and str().

◆ reformat()

void SLHAea::Coll::reformat ( )
inline

Reformats all Blocks in the Coll.

See also
Block::reformat()

Definition at line 2331 of file slhaea.h.

References begin(), end(), flexiblesusy::detail::for_each(), MEM_FN, and SLHAea::Block::reformat().

◆ rend() [1/2]

reverse_iterator SLHAea::Coll::rend ( )
inline

Returns a read/write reverse iterator that points to one before the first element in the Coll. Iteration is done in reverse element order.

Definition at line 1990 of file slhaea.h.

References impl_.

Referenced by erase_last().

◆ rend() [2/2]

const_reverse_iterator SLHAea::Coll::rend ( ) const
inline

Returns a read-only (constant) reverse iterator that points to one before the first element in the Coll. Iteration is done in reverse element order.

Definition at line 1999 of file slhaea.h.

References impl_.

◆ size()

size_type SLHAea::Coll::size ( ) const
inline

Returns the number of elements in the Coll.

Definition at line 2126 of file slhaea.h.

References impl_.

Referenced by SLHAea::operator==(), and read().

◆ str() [1/2]

std::string SLHAea::Coll::str ( ) const
inline

Returns a string representation of the Coll.

Definition at line 1706 of file slhaea.h.

◆ str() [2/2]

Coll & SLHAea::Coll::str ( const std::string &  coll)
inline

Assigns content from a string to the Coll.

Parameters
collString that is used as content for the Coll.
Returns
Reference to *this.

Definition at line 1696 of file slhaea.h.

References clear(), and read().

◆ swap()

void SLHAea::Coll::swap ( Coll coll)
inline

Swaps data with another Coll.

Parameters
collColl to be swapped with.

Definition at line 2318 of file slhaea.h.

References impl_.

◆ uncomment()

void SLHAea::Coll::uncomment ( )
inline

Uncomments all Blocks in the Coll.

See also
Block::uncomment()

Definition at line 2347 of file slhaea.h.

References begin(), end(), flexiblesusy::detail::for_each(), MEM_FN, and SLHAea::Block::uncomment().

Member Data Documentation

◆ impl_

impl_type SLHAea::Coll::impl_
private

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