]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/uuid/include/boost/uuid/detail/uuid_generic.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / uuid / include / boost / uuid / detail / uuid_generic.hpp
CommitLineData
7c673cae
FG
1/*
2 * Copyright Andy Tompkins 2006.
3 * Distributed under the Boost Software License, Version 1.0.
4 * (See accompanying file LICENSE_1_0.txt or copy at
5 * http://www.boost.org/LICENSE_1_0.txt)
6 */
7/*!
8 * \file uuid/detail/uuid_generic.hpp
9 *
10 * \brief This header contains generic implementation of \c boost::uuid operations.
11 */
12
13#ifndef BOOST_UUID_DETAIL_UUID_GENERIC_HPP_INCLUDED_
14#define BOOST_UUID_DETAIL_UUID_GENERIC_HPP_INCLUDED_
15
16#include <string.h>
17
18namespace boost {
19namespace uuids {
20
21inline bool uuid::is_nil() const BOOST_NOEXCEPT
22{
23 for (std::size_t i = 0; i < sizeof(data); ++i)
24 {
25 if (data[i] != 0U)
26 return false;
27 }
28 return true;
29}
30
31inline void uuid::swap(uuid& rhs) BOOST_NOEXCEPT
32{
33 uuid tmp = *this;
34 *this = rhs;
35 rhs = tmp;
36}
37
38inline bool operator== (uuid const& lhs, uuid const& rhs) BOOST_NOEXCEPT
39{
40 return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) == 0;
41}
42
43inline bool operator< (uuid const& lhs, uuid const& rhs) BOOST_NOEXCEPT
44{
45 return memcmp(lhs.data, rhs.data, sizeof(lhs.data)) < 0;
46}
47
48} // namespace uuids
49} // namespace boost
50
51#endif // BOOST_UUID_DETAIL_UUID_GENERIC_HPP_INCLUDED_