Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_34_1/boost/tr1/tuple.hpp @ 44

Last change on this file since 44 was 29, checked in by landauf, 16 years ago

updated boost from 1_33_1 to 1_34_1

File size: 2.0 KB
Line 
1//  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
2
3#ifndef BOOST_TR1_TUPLE_HPP_INCLUDED
4#  define BOOST_TR1_TUPLE_HPP_INCLUDED
5#  include <boost/tr1/detail/config.hpp>
6
7#ifdef BOOST_HAS_TR1_TUPLE
8
9#  include BOOST_TR1_HEADER(tuple)
10
11#else
12
13#if defined(BOOST_TR1_USE_OLD_TUPLE)
14
15#include <boost/tuple/tuple.hpp>
16#include <boost/tuple/tuple_comparison.hpp>
17#include <boost/type_traits/integral_constant.hpp>
18
19namespace std{ namespace tr1{
20
21using ::boost::tuple;
22
23// [6.1.3.2] Tuple creation functions
24using ::boost::tuples::ignore;
25using ::boost::make_tuple;
26using ::boost::tie;
27
28// [6.1.3.3] Tuple helper classes
29template <class T> 
30struct tuple_size 
31   : public ::boost::integral_constant
32   < ::std::size_t, ::boost::tuples::length<T>::value>
33{};
34
35template < int I, class T>
36struct tuple_element
37{
38   typedef typename boost::tuples::element<I,T>::type type;
39};
40
41#if !BOOST_WORKAROUND(__BORLANDC__, < 0x0582)
42// [6.1.3.4] Element access
43using ::boost::get;
44#endif
45
46} } // namespaces
47
48#else
49
50#include <boost/spirit/fusion/sequence/tuple.hpp>
51#include <boost/spirit/fusion/sequence/tuple_element.hpp>
52#include <boost/spirit/fusion/sequence/tuple_size.hpp>
53#include <boost/spirit/fusion/sequence/make_tuple.hpp>
54#include <boost/spirit/fusion/sequence/tie.hpp>
55#include <boost/spirit/fusion/sequence/get.hpp>
56#include <boost/spirit/fusion/sequence/equal_to.hpp>
57#include <boost/spirit/fusion/sequence/not_equal_to.hpp>
58#include <boost/spirit/fusion/sequence/less.hpp>
59#include <boost/spirit/fusion/sequence/less_equal.hpp>
60#include <boost/spirit/fusion/sequence/greater.hpp>
61#include <boost/spirit/fusion/sequence/greater_equal.hpp>
62
63namespace std{ namespace tr1{
64
65using ::boost::fusion::tuple;
66
67// [6.1.3.2] Tuple creation functions
68using ::boost::fusion::ignore;
69using ::boost::fusion::make_tuple;
70using ::boost::fusion::tie;
71using ::boost::fusion::get;
72
73// [6.1.3.3] Tuple helper classes
74using ::boost::fusion::tuple_size;
75using ::boost::fusion::tuple_element;
76
77}}
78
79#endif
80
81#endif
82
83#endif
Note: See TracBrowser for help on using the repository browser.