Xped
Loading...
Searching...
No Matches
Bonds.hpp
Go to the documentation of this file.
1#ifndef XPED_BONDS_HPP_
2#define XPED_BONDS_HPP_
3
4#include <boost/describe.hpp>
5
7
8namespace Xped::Opts {
9enum class Bond : uint32_t
10{
11 H = (1 << 0),
12 V = (1 << 1),
13 D1 = (1 << 2),
14 D2 = (1 << 3)
15};
16BOOST_DESCRIBE_ENUM(Bond, H, V, D1, D2)
17
18constexpr enum Bond operator|(const enum Bond selfValue, const enum Bond inValue) { return (enum Bond)(uint32_t(selfValue) | uint32_t(inValue)); }
19
20constexpr enum Bond operator&(const enum Bond selfValue, const enum Bond inValue) { return (enum Bond)(uint32_t(selfValue) & uint32_t(inValue)); }
21
22} // namespace Xped::Opts
23
24#endif
Definition: bench.cpp:62
constexpr enum Bond operator&(const enum Bond selfValue, const enum Bond inValue)
Definition: Bonds.hpp:20
Bond
Definition: Bonds.hpp:10