Menu

famouso::mw::attributes::detail::Duplicates< AttrSeq, Iter > Struct Template Reference

Can be used to test a given sequence of attributes for contained duplicates. More...

#include <Duplicates.h>

Public Types

typedef boost::mpl::eval_if_c
< result, typename
curAttr::type, typename
nextDupl::duplicateAttribute >
::type 
duplicateAttribute
 The attribute for which the first duplicate was found.

Static Public Attributes

static const bool result = (currentCount::value > 1) ? true : nextDupl::result
 True, if the given sequence contains duplicates, false otherwise.

Detailed Description

template<typename AttrSeq, typename Iter = typename boost::mpl::begin<AttrSeq>::type>
struct famouso::mw::attributes::detail::Duplicates< AttrSeq, Iter >

Can be used to test a given sequence of attributes for contained duplicates.

A duplicate attribute is determined by having the same base type as its regarded pendant. This struct also provides the attribute for which the first duplicate weas found.

Template Parameters:
AttrSeq The attribute sequence to test
Iter The current iterator in the sequence, should be left at default when used externally

Member Typedef Documentation

template<typename AttrSeq , typename Iter = typename boost::mpl::begin<AttrSeq>::type>
typedef boost::mpl::eval_if_c< result, typename curAttr::type, typename nextDupl::duplicateAttribute >::type famouso::mw::attributes::detail::Duplicates< AttrSeq, Iter >::duplicateAttribute

The attribute for which the first duplicate was found.


Field Documentation

template<typename AttrSeq , typename Iter = typename boost::mpl::begin<AttrSeq>::type>
const bool famouso::mw::attributes::detail::Duplicates< AttrSeq, Iter >::result = (currentCount::value > 1) ? true : nextDupl::result [static]

True, if the given sequence contains duplicates, false otherwise.


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