protected: \
\
typedef typ impl_type; \
impl_type memb; \
\
public: \
\
typedef
mTypeName impl_type::size_type size_type; \
typedef
mTypeName impl_type::idx_type idx_type; \
typedef
mTypeName impl_type::object_type object_type; \
typedef
mTypeName impl_type::value_type value_type; \
typedef
mTypeName impl_type::iterator iterator; \
typedef
mTypeName impl_type::const_iterator const_iterator; \
typedef
mTypeName impl_type::difference_type difference_type; \
typedef
mTypeName impl_type::reference reference; \
typedef
mTypeName impl_type::const_reference const_reference; \
\
iterator
begin() {
return memb.begin(); } \
const_iterator
begin()
const {
return memb.cbegin(); } \
const_iterator cbegin() const { return memb.cbegin(); } \
iterator
end() {
return memb.end(); } \
const_iterator
end()
const {
return memb.cend(); } \
const_iterator cend() const { return memb.cend(); } \
inline size_type max_size() const { return memb.max_size(); } \
inline bool empty() const { return memb.empty(); } \
inline
void swap( clss& oth ) { memb.swap(oth.memb); } \
\
size_type getIdx( iterator it ) const { return memb.getIdx(it); } \
size_type getIdx( const_iterator it ) const { return memb.getIdx(it); }