18 lines
318 B
C
18 lines
318 B
C
|
|
#pragma once
|
||
|
|
#include <utility>
|
||
|
|
namespace meta
|
||
|
|
{
|
||
|
|
template<typename T>
|
||
|
|
struct comparable
|
||
|
|
{
|
||
|
|
bool operator>(const T&) const;
|
||
|
|
bool operator<=(const T&) const;
|
||
|
|
bool operator>=(const T&) const;
|
||
|
|
bool operator==(const T&) const;
|
||
|
|
bool operator!=(const T&) const;
|
||
|
|
private:
|
||
|
|
T& me();
|
||
|
|
const T& me() const;
|
||
|
|
};
|
||
|
|
}
|