Sprout/sprout/tuple/default_construct.hpp

34 lines
1 KiB
C++
Raw Normal View History

2014-09-22 01:40:52 +00:00
/*=============================================================================
Copyright (c) 2011-2014 Bolero MURAKAMI
https://github.com/bolero-MURAKAMI/Sprout
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
#ifndef SPROUT_TUPLE_DEFAULT_CONSTRUCT_HPP
#define SPROUT_TUPLE_DEFAULT_CONSTRUCT_HPP
#include <sprout/config.hpp>
namespace sprout {
namespace tuples {
//
// default_construct_t
// default_construct
//
2014-09-22 04:30:09 +00:00
struct default_construct_t {
public:
template<typename T>
2014-09-22 04:42:42 +00:00
SPROUT_CONSTEXPR operator T() const {
2014-09-22 04:30:09 +00:00
return T();
}
};
2014-09-22 01:40:52 +00:00
SPROUT_STATIC_CONSTEXPR sprout::tuples::default_construct_t default_construct = {};
} // namespace tuples
using sprout::tuples::default_construct_t;
using sprout::tuples::default_construct;
} // namespace sprout
#endif // #ifndef SPROUT_TUPLE_DEFAULT_CONSTRUCT_HPP