16 #ifndef polybori_BooleSetSequence_h_
17 #define polybori_BooleSetSequence_h_
45 template <
class SetType,
class Operator>
47 m_termsets(terms.size(), terms.ring()) {
48 std::transform(terms.begin(), terms.end(), m_termsets.begin(), func);
53 const_iterator
begin()
const {
return m_termsets.begin(); }
54 const_iterator
end()
const {
return m_termsets.end(); }
55 const_reverse_iterator
rbegin()
const {
return m_termsets.rbegin(); }
56 const_reverse_iterator
rend()
const {
return m_termsets.rend(); }
57 bool empty()
const {
return m_termsets.empty(); }
61 vector_type m_termsets;
#define END_NAMESPACE_PBORI
Finish project's namespace.
Definition: pbori_defs.h:77
#define BEGIN_NAMESPACE_PBORI
Start project's namespace.
Definition: pbori_defs.h:74
const_iterator end() const
Definition: BooleSetSequence.h:54
const_reverse_iterator rbegin() const
Definition: BooleSetSequence.h:55
bool empty() const
Definition: BooleSetSequence.h:57
const_iterator begin() const
Sequence-like interface.
Definition: BooleSetSequence.h:53
This class converts a BooleSet to a sequence-like structure.
Definition: BooleSetSequence.h:33
OutIter transform(InIter start, InIter finish, OutIter result, Object &obj, MemberFuncPtr func)
Definition: pbori_algo.h:849
BooleSetSequence(const SetType &terms, const Operator &func)
Construct sequence from a set of terms and an unary conversion function.
Definition: BooleSetSequence.h:46
BooleSetSequence()
Standard constructor yields an empty set.
Definition: BooleSetSequence.h:41
vector_type::const_reverse_iterator const_reverse_iterator
Definition: BooleSetSequence.h:38
vector_type::const_iterator const_iterator
Definition: BooleSetSequence.h:37
std::vector< BooleSet > vector_type
Definition: BooleSetSequence.h:36
const_reverse_iterator rend() const
Definition: BooleSetSequence.h:56