SENF Extensible Network Framework
Home
Overview
Examples
HowTos
Glossary
Ext
NetEmu
PPI
Packets
Scheduler
Socket
Utils
Console
Daemon
Logger
Termlib
IteratorTraits.hh
Go to the documentation of this file.
1
//
2
// Copyright (c) 2020 Fraunhofer Institute for Applied Information Technology (FIT)
3
// Network Research Group (NET)
4
// Schloss Birlinghoven, 53754 Sankt Augustin, GERMANY
5
// Contact: support@wiback.org
6
//
7
// This file is part of the SENF code tree.
8
// It is licensed under the 3-clause BSD License (aka New BSD License).
9
// See LICENSE.txt in the top level directory for details or visit
10
// https://opensource.org/licenses/BSD-3-Clause
11
//
12
13
17
#ifndef HH_SENF_Utils_IteratorTraits_
18
#define HH_SENF_Utils_IteratorTraits_ 1
19
20
// Custom includes
21
#include <boost/type_traits/integral_constant.hpp>
22
#include <vector>
23
#include <string>
24
25
//#include "IteratorTraits.mpp"
26
//-/////////////////////////////////////////////////////////////////////////////////////////////////
27
28
namespace
senf
{
29
30
// The following is *not* standard mandated but it *is* mandated by TR1 and I know of no
31
// implementation for which this is not correct
32
74
template
<
class
RandomAccessIterator>
75
struct
contiguous_storage_iterator
76
:
public
boost::false_type
77
{};
78
83
template
<
class
T>
84
struct
contiguous_storage_iterator
<T *>
85
:
public
boost::true_type
86
{};
87
96
template
<
class
Iterator>
97
typename
std::iterator_traits<Iterator>::pointer
storage_iterator
(Iterator i);
98
99
}
100
101
//-/////////////////////////////////////////////////////////////////////////////////////////////////
102
//#include "IteratorTraits.cci"
103
//#include "IteratorTraits.ct"
104
#include "
IteratorTraits.cti
"
105
#include "
IteratorTraits.ih
"
106
#endif
107
108
109
// Local Variables:
110
// mode: c++
111
// fill-column: 100
112
// c-file-style: "senf"
113
// indent-tabs-mode: nil
114
// ispell-local-dictionary: "american"
115
// compile-command: "scons -u test"
116
// comment-column: 40
117
// End:
senf::contiguous_storage_iterator
Check for contiguous mutable storage.
Definition:
IteratorTraits.hh:75
senf
Definition:
algorithm.hh:27
IteratorTraits.ih
IteratorTraits.cti
senf::storage_iterator
std::iterator_traits< Iterator >::pointer storage_iterator(Iterator i)
Convert contiguous storage iterator to pointer.