mpqc::FermionStringCompleteSet< FString > Class Template Reference

Documentation

template<typename FString>
class mpqc::FermionStringCompleteSet< FString >

complete set of strings representable in a fixed number of states

Note
does not store strings, but generates them on the fly from the ordinal, thus only bitset strings representable by a 64-bit integer should be used.
Warning
should not be used if need persistent strings

Classes

struct  Iterator
 iterator is a proxy to a FString object, stores an ordinal More...
 

Public Types

typedef Iterator const_iterator
 
using ordinal_type = typename const_iterator::ordinal_type
 
typedef FString value_type
 

Public Member Functions

 FermionStringCompleteSet ()=default
 creates a null set of strings, only useful for convenience More...
 
 FermionStringCompleteSet (int Ns)
 creates a complete set of strings in Ns states More...
 
 FermionStringCompleteSet (const FermionStringCompleteSet &)=default
 
 FermionStringCompleteSet (FermionStringCompleteSet &&)=default
 
FermionStringCompleteSetoperator= (const FermionStringCompleteSet &)=default
 
FermionStringCompleteSetoperator= (FermionStringCompleteSet &&)=default
 
 ~FermionStringCompleteSet ()=default
 
const_iterator insert (const FString &s)
 
const_iterator insert (FString &&s)
 
const_iterator begin () const
 
const_iterator end () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
bool contains (const FString &str) const
 
const_iterator find (const FString &str) const
 
std::optional< const_iteratorsafe_find (const FString &str) const
 
size_t size () const
 

Member Typedef Documentation

◆ const_iterator

template<typename FString >
typedef Iterator mpqc::FermionStringCompleteSet< FString >::const_iterator

◆ ordinal_type

template<typename FString >
using mpqc::FermionStringCompleteSet< FString >::ordinal_type = typename const_iterator::ordinal_type

◆ value_type

template<typename FString >
typedef FString mpqc::FermionStringCompleteSet< FString >::value_type

Constructor & Destructor Documentation

◆ FermionStringCompleteSet() [1/4]

template<typename FString >
mpqc::FermionStringCompleteSet< FString >::FermionStringCompleteSet ( )
default

creates a null set of strings, only useful for convenience

◆ FermionStringCompleteSet() [2/4]

template<typename FString >
mpqc::FermionStringCompleteSet< FString >::FermionStringCompleteSet ( int  Ns)
inline

creates a complete set of strings in Ns states

◆ FermionStringCompleteSet() [3/4]

template<typename FString >
mpqc::FermionStringCompleteSet< FString >::FermionStringCompleteSet ( const FermionStringCompleteSet< FString > &  )
default

◆ FermionStringCompleteSet() [4/4]

template<typename FString >
mpqc::FermionStringCompleteSet< FString >::FermionStringCompleteSet ( FermionStringCompleteSet< FString > &&  )
default

◆ ~FermionStringCompleteSet()

template<typename FString >
mpqc::FermionStringCompleteSet< FString >::~FermionStringCompleteSet ( )
default

Member Function Documentation

◆ begin()

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::begin ( ) const
inline

◆ cbegin()

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::cbegin ( ) const
inline

◆ cend()

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::cend ( ) const
inline

◆ contains()

template<typename FString >
bool mpqc::FermionStringCompleteSet< FString >::contains ( const FString &  str) const
inline

◆ end()

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::end ( ) const
inline

◆ find()

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::find ( const FString &  str) const
inline

◆ insert() [1/2]

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::insert ( const FString &  s)
inline
Parameters
[in]sa nonnull string to be inserted into this
Note
this always aborts, only exists to make the interface as similar to other string sets as possible

◆ insert() [2/2]

template<typename FString >
const_iterator mpqc::FermionStringCompleteSet< FString >::insert ( FString &&  s)
inline
Parameters
[in]sa nonnull string to be inserted into this
Note
this always aborts, only exists to make the interface as similar to other string sets as possible

◆ operator=() [1/2]

template<typename FString >
FermionStringCompleteSet& mpqc::FermionStringCompleteSet< FString >::operator= ( const FermionStringCompleteSet< FString > &  )
default

◆ operator=() [2/2]

template<typename FString >
FermionStringCompleteSet& mpqc::FermionStringCompleteSet< FString >::operator= ( FermionStringCompleteSet< FString > &&  )
default

◆ safe_find()

template<typename FString >
std::optional<const_iterator> mpqc::FermionStringCompleteSet< FString >::safe_find ( const FString &  str) const
inline

◆ size()

template<typename FString >
size_t mpqc::FermionStringCompleteSet< FString >::size ( ) const
inline
Returns
the number of strings in the set

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