Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
concepts.hpp
Go to the documentation of this file.
1
#pragma once
2
3
struct
DoNothing
{
4
void
operator()
(
auto
...) {}
5
};
6
namespace
msgpack_concepts
{
7
template
<
typename
T>
8
concept
HasMsgPack
=
requires
(T t,
DoNothing
nop) { t.msgpack(nop); };
9
10
template
<
typename
T>
11
concept
HasMsgPackSchema
=
requires
(
const
T t,
DoNothing
nop) { t.msgpack_schema(nop); };
12
13
template
<
typename
T>
14
concept
HasMsgPackPack
=
requires
(T t,
DoNothing
nop) { t.msgpack_pack(nop); };
15
template
<
typename
T,
typename
... Args>
16
concept
MsgpackConstructible
=
requires
(T object, Args... args) { T{ args... }; };
17
18
}
// namespace msgpack_concepts
msgpack_concepts::HasMsgPack
Definition
concepts.hpp:8
msgpack_concepts::HasMsgPackPack
Definition
concepts.hpp:14
msgpack_concepts::HasMsgPackSchema
Definition
concepts.hpp:11
msgpack_concepts::MsgpackConstructible
Definition
concepts.hpp:16
msgpack_concepts
Definition
concepts.hpp:6
DoNothing
Definition
concepts.hpp:3
DoNothing::operator()
void operator()(auto...)
Definition
concepts.hpp:4
src
barretenberg
serialize
msgpack_impl
concepts.hpp
Generated by
1.9.8