Adobe Source Libraries 1.49.0
A collection of C++ libraries.
Loading...
Searching...
No Matches
empty.hpp
Go to the documentation of this file.
1/*
2 Copyright 2013 Adobe
3 Distributed under the Boost Software License, Version 1.0.
4 (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
5*/
6/**************************************************************************************************/
7
8#ifndef ADOBE_EMPTY_HPP
9#define ADOBE_EMPTY_HPP
10
11/**************************************************************************************************/
12
13#include <adobe/config.hpp>
14
15#include <boost/mpl/bool.hpp>
16#include <boost/operators.hpp>
17
18#if defined(ADOBE_STD_SERIALIZATION)
19#include <iosfwd>
20#endif
21
22/**************************************************************************************************/
23
24namespace adobe {
25inline namespace version_1 {
26
27/**************************************************************************************************/
28
41
42struct empty_t : private boost::totally_ordered<empty_t> {
43 friend inline bool operator==(const empty_t&, const empty_t&) { return true; }
44 friend inline bool operator<(const empty_t&, const empty_t&) { return false; }
45 friend inline void swap(empty_t&, empty_t&) {}
46};
47
48#if defined(ADOBE_STD_SERIALIZATION)
49std::ostream& operator<<(std::ostream& stream, const empty_t&);
50#endif
51
52/**************************************************************************************************/
53
54} // namespace version_1
55
56/**************************************************************************************************/
57
62
64template <typename Derived>
65struct empty_base {};
66
67/**************************************************************************************************/
68
69} // namespace adobe
70
71/**************************************************************************************************/
72
73#endif
74
75/**************************************************************************************************/
std::ostream & operator<<(std::ostream &s, const extents_t &x)
An empty regular- and less-than-comparable- type.
Definition empty.hpp:42
friend void swap(empty_t &, empty_t &)
Definition empty.hpp:45
friend bool operator==(const empty_t &, const empty_t &)
Definition empty.hpp:43
friend bool operator<(const empty_t &, const empty_t &)
Definition empty.hpp:44