ZeroErr
Loading...
Searching...
No Matches
zeroerr::SequenceContainerOf< T, InnerDomain > Class Template Reference

#include <container_of.h>

Inheritance diagram for zeroerr::SequenceContainerOf< T, InnerDomain >:
Collaboration diagram for zeroerr::SequenceContainerOf< T, InnerDomain >:

Public Types

using ValueType = T
using CorpusType = std::vector<typename InnerDomain::CorpusType>

Public Member Functions

 SequenceContainerOf (InnerDomain &&inner_domain)
virtual ValueType GetValue (const CorpusType &v) const override
virtual CorpusType FromValue (const ValueType &v) const override
CorpusType GetRandomCorpus (Rng &rng) const override
void Mutate (Rng &rng, CorpusType &v, bool only_shrink) const override
Public Member Functions inherited from zeroerr::Domain< T, std::vector< InnerDomain::CorpusType > >
virtual ~Domain ()=default
virtual T GetRandomValue (Rng &rng) const
virtual T GetValue (const CorpusType &v) const=0
virtual CorpusType ParseCorpus (IRObject v) const
virtual IRObject SerializeCorpus (const CorpusType &v) const
virtual void Mutate (Rng &rng, CorpusType &v, bool only_shrink=false) const=0
Public Member Functions inherited from zeroerr::ContainerOfBase
void WithMaxSize (unsigned value)
void WithMinSize (unsigned value)
void WithSize (unsigned value)

Additional Inherited Members

Public Attributes inherited from zeroerr::ContainerOfBase
int min_size = 0
int max_size = 100
int size = -1
Protected Member Functions inherited from zeroerr::ContainerOfBase
void validate () const
unsigned randomSize (Rng &rng) const
template<class Inner, class Corpus>
void mutate (Rng &rng, Corpus &v, bool only_shrink, const Inner &inner) const
Static Protected Member Functions inherited from zeroerr::ContainerOfBase
static int checkedSize (unsigned value)

Member Typedef Documentation

◆ CorpusType

template<typename T, typename InnerDomain>
using zeroerr::SequenceContainerOf< T, InnerDomain >::CorpusType = std::vector<typename InnerDomain::CorpusType>

◆ ValueType

template<typename T, typename InnerDomain>
using zeroerr::SequenceContainerOf< T, InnerDomain >::ValueType = T

Constructor & Destructor Documentation

◆ SequenceContainerOf()

template<typename T, typename InnerDomain>
zeroerr::SequenceContainerOf< T, InnerDomain >::SequenceContainerOf ( InnerDomain && inner_domain)
inline

Member Function Documentation

◆ FromValue()

template<typename T, typename InnerDomain>
virtual CorpusType zeroerr::SequenceContainerOf< T, InnerDomain >::FromValue ( const ValueType & v) const
inlineoverridevirtual

◆ GetRandomCorpus()

template<typename T, typename InnerDomain>
CorpusType zeroerr::SequenceContainerOf< T, InnerDomain >::GetRandomCorpus ( Rng & rng) const
inlineoverridevirtual

◆ GetValue()

template<typename T, typename InnerDomain>
virtual ValueType zeroerr::SequenceContainerOf< T, InnerDomain >::GetValue ( const CorpusType & v) const
inlineoverridevirtual

◆ Mutate()

template<typename T, typename InnerDomain>
void zeroerr::SequenceContainerOf< T, InnerDomain >::Mutate ( Rng & rng,
CorpusType & v,
bool only_shrink ) const
inlineoverride

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