~twpol/dcplusplus/trunk

« back to all changes in this revision

Viewing changes to boost/boost/bimap/support/value_type_by.hpp

  • Committer: James Ross
  • Date: 2010-07-05 00:03:18 UTC
  • mfrom: (1524.1.650 dcplusplus)
  • Revision ID: silver@warwickcompsoc.co.uk-20100705000318-awwqm8ocpp5m47yz
Merged to trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// Boost.Bimap
2
 
//
3
 
// Copyright (c) 2006-2007 Matias Capeletto
4
 
//
5
 
// Distributed under the Boost Software License, Version 1.0.
6
 
// (See accompanying file LICENSE_1_0.txt or copy at
7
 
// http://www.boost.org/LICENSE_1_0.txt)
8
 
 
9
 
/// \file support/value_type_by.hpp
10
 
/// \brief Metafunction to access the value types (std::pair compatibles) of a bimap
11
 
 
12
 
#ifndef BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
13
 
#define BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
14
 
 
15
 
#if defined(_MSC_VER) && (_MSC_VER>=1200)
16
 
#pragma once
17
 
#endif
18
 
 
19
 
#include <boost/config.hpp>
20
 
 
21
 
#include <boost/bimap/relation/detail/metadata_access_builder.hpp>
22
 
 
23
 
/** \struct boost::bimaps::support::value_type_by
24
 
 
25
 
\brief Metafunction to obtain the value type of a bimap indexed by one of the sides.
26
 
 
27
 
The tag parameter can be either a user defined tag or \c member_at::{side}.
28
 
The returned type is signature-compatible with std::pair.
29
 
 
30
 
\code
31
 
 
32
 
template< class Tag, class Bimap >
33
 
struct value_type_by
34
 
{
35
 
    typedef typename Bimap::{side}_value_type type;
36
 
};
37
 
 
38
 
\endcode
39
 
 
40
 
See also member_at.
41
 
\ingroup bimap_group
42
 
                                                                    **/
43
 
 
44
 
namespace boost {
45
 
namespace bimaps {
46
 
namespace support {
47
 
 
48
 
// Implementation of value type by metafunction
49
 
 
50
 
BOOST_BIMAP_SYMMETRIC_METADATA_ACCESS_BUILDER
51
 
(
52
 
    value_type_by,
53
 
    left_value_type,
54
 
    right_value_type
55
 
)
56
 
 
57
 
 
58
 
 
59
 
} // namespace support
60
 
} // namespace bimaps
61
 
} // namespace boost
62
 
 
63
 
 
64
 
#endif // BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
65
 
 
 
1
// Boost.Bimap
 
2
//
 
3
// Copyright (c) 2006-2007 Matias Capeletto
 
4
//
 
5
// Distributed under the Boost Software License, Version 1.0.
 
6
// (See accompanying file LICENSE_1_0.txt or copy at
 
7
// http://www.boost.org/LICENSE_1_0.txt)
 
8
 
 
9
/// \file support/value_type_by.hpp
 
10
/// \brief Metafunction to access the value types (std::pair compatibles) of a bimap
 
11
 
 
12
#ifndef BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
 
13
#define BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
 
14
 
 
15
#if defined(_MSC_VER) && (_MSC_VER>=1200)
 
16
#pragma once
 
17
#endif
 
18
 
 
19
#include <boost/config.hpp>
 
20
 
 
21
#include <boost/bimap/relation/detail/metadata_access_builder.hpp>
 
22
 
 
23
/** \struct boost::bimaps::support::value_type_by
 
24
 
 
25
\brief Metafunction to obtain the value type of a bimap indexed by one of the sides.
 
26
 
 
27
The tag parameter can be either a user defined tag or \c member_at::{side}.
 
28
The returned type is signature-compatible with std::pair.
 
29
 
 
30
\code
 
31
 
 
32
template< class Tag, class Bimap >
 
33
struct value_type_by
 
34
{
 
35
    typedef typename Bimap::{side}_value_type type;
 
36
};
 
37
 
 
38
\endcode
 
39
 
 
40
See also member_at.
 
41
\ingroup bimap_group
 
42
                                                                    **/
 
43
 
 
44
namespace boost {
 
45
namespace bimaps {
 
46
namespace support {
 
47
 
 
48
// Implementation of value type by metafunction
 
49
 
 
50
BOOST_BIMAP_SYMMETRIC_METADATA_ACCESS_BUILDER
 
51
(
 
52
    value_type_by,
 
53
    left_value_type,
 
54
    right_value_type
 
55
)
 
56
 
 
57
 
 
58
 
 
59
} // namespace support
 
60
} // namespace bimaps
 
61
} // namespace boost
 
62
 
 
63
 
 
64
#endif // BOOST_BIMAP_SUPPORT_VALUE_TYPE_BY_HPP
 
65