CCF
Loading...
Searching...
No Matches
include
ccf
service
map.h
Go to the documentation of this file.
1
// Copyright (c) Microsoft Corporation. All rights reserved.
2
// Licensed under the Apache 2.0 License.
3
#pragma once
4
5
#include "
ccf/kv/map.h
"
6
#include "
ccf/kv/set.h
"
7
#include "
ccf/kv/value.h
"
8
9
namespace
ccf
10
{
11
// This type should be used for most service key-value maps so that:
12
// - The raw key is trivially and cheaply deserialisable.
13
// - The JSON value can conveniently be audited offline.
14
// Note: Maps which include large values (e.g. certificate or serialised
15
// Merkle tree) can use the `ccf::kv::RawCopySerialisedMap` type to maximise
16
// performance.
17
template
<
typename
K,
typename
V>
18
using
ServiceMap
=
ccf::kv::MapSerialisedWith
<
19
K,
20
V,
21
ccf::kv::serialisers::BlitSerialiser
,
22
ccf::kv::serialisers::JsonSerialiser
>;
23
24
template
<
typename
V>
25
using
ServiceValue
=
ccf::kv::ValueSerialisedWith
<
26
V,
27
ccf::kv::serialisers::JsonSerialiser
,
28
ccf::kv::serialisers::ZeroBlitUnitCreator
>;
29
30
template
<
typename
K>
31
using
ServiceSet
=
ccf::kv::SetSerialisedWith
<
32
K,
33
ccf::kv::serialisers::BlitSerialiser
,
34
ccf::kv::serialisers::ZeroBlitUnitCreator
>;
35
}
ccf::kv::TypedMap
Definition
map.h:30
ccf::kv::TypedSet
Definition
set.h:33
ccf::kv::TypedValue
Definition
value.h:32
map.h
ccf
Definition
app_interface.h:14
set.h
ccf::kv::serialisers::BlitSerialiser
Definition
blit_serialiser.h:14
ccf::kv::serialisers::JsonSerialiser
Definition
json_serialiser.h:17
ccf::kv::serialisers::ZeroBlitUnitCreator
Definition
unit.h:20
value.h
Generated by
1.9.8