aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/deps/rpclib/include/rpc/detail/func_tools.h
blob: 4f18e482d4ae3ac610a10282f0b0ee513c3c49b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once

#ifndef FUNC_TOOLS_H_9FNRD4G2
#define FUNC_TOOLS_H_9FNRD4G2

#include "rpc/detail/invoke.h"
#include "rpc/detail/all.h"
#include "rpc/detail/any.h"

namespace rpc {
namespace detail {


enum class enabled {};

template <typename... C>
using enable_if = invoke<std::enable_if<all<C...>::value, enabled>>;

template <typename... C>
using disable_if = invoke<std::enable_if<!any<C...>::value, enabled>>;


}
}

#endif /* end of include guard: FUNC_TOOLS_H_9FNRD4G2 */