Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
capnproto
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
capnproto
Commits
6b35c286
Commit
6b35c286
authored
Nov 09, 2014
by
Kenton Varda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Working on RealmGateway support, need AnyStruct, gotta merge.
parent
352bb995
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
1207 additions
and
65 deletions
+1207
-65
any.h
c++/src/capnp/any.h
+26
-3
common.h
c++/src/capnp/common.h
+4
-0
capnpc-c++.c++
c++/src/capnp/compiler/capnpc-c++.c++
+1
-0
grammar.capnp.h
c++/src/capnp/compiler/grammar.capnp.h
+24
-0
lexer.capnp.h
c++/src/capnp/compiler/lexer.capnp.h
+4
-0
persistent.capnp
c++/src/capnp/persistent.capnp
+21
-1
persistent.capnp.c++
c++/src/capnp/persistent.capnp.c++
+336
-38
persistent.capnp.h
c++/src/capnp/persistent.capnp.h
+599
-9
rpc-prelude.h
c++/src/capnp/rpc-prelude.h
+3
-1
rpc-twoparty.capnp.h
c++/src/capnp/rpc-twoparty.capnp.h
+6
-0
rpc.c++
c++/src/capnp/rpc.c++
+86
-10
rpc.capnp.h
c++/src/capnp/rpc.capnp.h
+20
-0
rpc.h
c++/src/capnp/rpc.h
+46
-3
schema.capnp.h
c++/src/capnp/schema.capnp.h
+31
-0
No files found.
c++/src/capnp/any.h
View file @
6b35c286
...
...
@@ -186,6 +186,8 @@ struct AnyPointer {
#if !CAPNP_LITE
class
Pipeline
{
public
:
typedef
AnyPointer
Pipelines
;
inline
Pipeline
(
decltype
(
nullptr
))
{}
inline
explicit
Pipeline
(
kj
::
Own
<
PipelineHook
>&&
hook
)
:
hook
(
kj
::
mv
(
hook
))
{}
...
...
@@ -321,9 +323,11 @@ public:
// Version of getPipelinedCap() passing the array by move. May avoid a copy in some cases.
// Default implementation just calls the other version.
static
inline
kj
::
Own
<
PipelineHook
>
from
(
AnyPointer
::
Pipeline
&&
pipeline
)
{
return
kj
::
mv
(
pipeline
.
hook
);
}
template
<
typename
Pipeline
,
typename
=
FromPipeline
<
Pipeline
>>
static
inline
kj
::
Own
<
PipelineHook
>
from
(
Pipeline
&&
pipeline
);
private
:
template
<
typename
T
>
struct
FromImpl
;
};
#endif // !CAPNP_LITE
...
...
@@ -491,6 +495,25 @@ struct PointerHelpers<AnyPointer, Kind::OTHER> {
}
// namespace _ (private)
template
<
typename
T
>
struct
PipelineHook
::
FromImpl
{
static
inline
kj
::
Own
<
PipelineHook
>
apply
(
typename
T
::
Pipeline
&&
pipeline
)
{
return
from
(
kj
::
mv
(
pipeline
.
_typeless
));
}
};
template
<>
struct
PipelineHook
::
FromImpl
<
AnyPointer
>
{
static
inline
kj
::
Own
<
PipelineHook
>
apply
(
AnyPointer
::
Pipeline
&&
pipeline
)
{
return
kj
::
mv
(
pipeline
.
hook
);
}
};
template
<
typename
Pipeline
,
typename
T
>
inline
kj
::
Own
<
PipelineHook
>
PipelineHook
::
from
(
Pipeline
&&
pipeline
)
{
return
FromImpl
<
T
>::
apply
(
kj
::
fwd
<
Pipeline
>
(
pipeline
));
}
}
// namespace capnp
#endif // CAPNP_ANY_H_
c++/src/capnp/common.h
View file @
6b35c286
...
...
@@ -181,6 +181,10 @@ template <typename T>
using
FromBuilder
=
typename
kj
::
Decay
<
T
>::
Builds
;
// FromBuilder<MyType::Builder> = MyType (for any Cap'n Proto type).
template
<
typename
T
>
using
FromPipeline
=
typename
kj
::
Decay
<
T
>::
Pipelines
;
// FromBuilder<MyType::Pipeline> = MyType (for any Cap'n Proto type).
template
<
typename
T
>
using
FromClient
=
typename
kj
::
Decay
<
T
>::
Calls
;
// FromReader<MyType::Client> = MyType (for any Cap'n Proto interface type).
...
...
c++/src/capnp/compiler/capnpc-c++.c++
View file @
6b35c286
...
...
@@ -1721,6 +1721,7 @@ private:
kj
::
mv
(
methodDecls
),
"private:
\n
"
" ::capnp::AnyPointer::Pipeline _typeless;
\n
"
" friend class ::capnp::PipelineHook;
\n
"
" template <typename, ::capnp::Kind>
\n
"
" friend struct ::capnp::ToDynamic_;
\n
"
"};
\n
"
...
...
c++/src/capnp/compiler/grammar.capnp.h
View file @
6b35c286
...
...
@@ -466,6 +466,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -549,6 +550,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -632,6 +634,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -838,6 +841,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -938,6 +942,7 @@ public:
inline
::
capnp
::
compiler
::
Expression
::
Pipeline
getValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1027,6 +1032,7 @@ public:
inline
::
capnp
::
compiler
::
Expression
::
Pipeline
getFunction
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1117,6 +1123,7 @@ public:
inline
::
capnp
::
compiler
::
LocatedText
::
Pipeline
getName
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1481,6 +1488,7 @@ public:
inline
Id
::
Pipeline
getId
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1569,6 +1577,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1654,6 +1663,7 @@ public:
inline
Value
::
Pipeline
getValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1743,6 +1753,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1847,6 +1858,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1963,6 +1975,7 @@ public:
inline
DefaultValue
::
Pipeline
getDefaultValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2052,6 +2065,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2153,6 +2167,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2232,6 +2247,7 @@ public:
inline
::
capnp
::
compiler
::
Expression
::
Pipeline
getTarget
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2322,6 +2338,7 @@ public:
inline
::
capnp
::
compiler
::
Expression
::
Pipeline
getValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2407,6 +2424,7 @@ public:
inline
DefaultValue
::
Pipeline
getDefaultValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2496,6 +2514,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2574,6 +2593,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2659,6 +2679,7 @@ public:
inline
Results
::
Pipeline
getResults
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2748,6 +2769,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2887,6 +2909,7 @@ public:
inline
::
capnp
::
compiler
::
Expression
::
Pipeline
getType
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2966,6 +2989,7 @@ public:
inline
::
capnp
::
compiler
::
Declaration
::
Pipeline
getRoot
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
c++/src/capnp/compiler/lexer.capnp.h
View file @
6b35c286
...
...
@@ -244,6 +244,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -363,6 +364,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -441,6 +443,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -519,6 +522,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
c++/src/capnp/persistent.capnp
View file @
6b35c286
...
...
@@ -52,8 +52,28 @@ interface Persistent@0xc8cb212fcd9f5691(SturdyRef) {
# to specify the `SturdyRef` parameter, since this type may differ from app to app or even host
# to host.
save @0
() -> (sturdyRef :SturdyRef)
;
save @0
SaveParams -> SaveResults
;
# Save a capability persistently so that it can be restored by a future connection. Not all
# capabilities can be saved -- application interfaces should define which capabilities support
# this and which do not.
struct SaveParams {}
struct SaveResults {
sturdyRef @0 :SturdyRef;
}
}
interface RealmGateway(InternalRef, ExternalRef) {
# Interface invoked when a SturdyRef is about to cross realms. The RPC system supports providing
# a RealmGateway as a callback hook when setting up RPC over some VatNetwork.
import @0 (cap :Persistent(ExternalRef), params :Persistent(InternalRef).SaveParams)
-> Persistent(InternalRef).SaveResults;
# Given an external capability, save it and return an internal reference. Used when someone
# inside the realm tries to save a capability from outside the realm.
export @1 (cap :Persistent(InternalRef), params :Persistent(ExternalRef).SaveParams)
-> Persistent(ExternalRef).SaveResults;
# Given an internal capability, save it and return an external reference. Used when someone
# outside the realm tries to save a capability from inside the realm.
}
c++/src/capnp/persistent.capnp.c++
View file @
6b35c286
...
...
@@ -5,7 +5,7 @@
namespace
capnp
{
namespace
schemas
{
static
const
::
capnp
::
_
::
AlignedData
<
44
>
b_c8cb212fcd9f5691
=
{
static
const
::
capnp
::
_
::
AlignedData
<
52
>
b_c8cb212fcd9f5691
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
23
,
0
,
0
,
0
,
3
,
0
,
0
,
0
,
...
...
@@ -13,21 +13,29 @@ static const ::capnp::_::AlignedData<44> b_c8cb212fcd9f5691 = {
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
18
,
1
,
0
,
0
,
37
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
37
,
0
,
0
,
0
,
39
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
33
,
0
,
0
,
0
,
71
,
0
,
0
,
0
,
1
13
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
1
13
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
65
,
0
,
0
,
0
,
71
,
0
,
0
,
0
,
1
45
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
1
45
,
0
,
0
,
0
,
15
,
0
,
0
,
0
,
99
,
97
,
112
,
110
,
112
,
47
,
112
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
80
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
8
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
165
,
115
,
48
,
24
,
89
,
186
,
111
,
247
,
9
,
0
,
0
,
0
,
90
,
0
,
0
,
0
,
191
,
239
,
64
,
140
,
193
,
72
,
104
,
183
,
9
,
0
,
0
,
0
,
98
,
0
,
0
,
0
,
83
,
97
,
118
,
101
,
80
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
0
,
0
,
0
,
0
,
83
,
97
,
118
,
101
,
82
,
101
,
115
,
117
,
108
,
116
,
115
,
0
,
0
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
3
,
0
,
5
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
246
,
251
,
127
,
14
,
96
,
3
,
134
,
201
,
15
,
169
,
183
,
122
,
200
,
49
,
216
,
248
,
165
,
115
,
48
,
24
,
89
,
186
,
111
,
247
,
191
,
239
,
64
,
140
,
193
,
72
,
104
,
183
,
17
,
0
,
0
,
0
,
42
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
12
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
...
...
@@ -54,8 +62,8 @@ static const ::capnp::_::AlignedData<44> b_c8cb212fcd9f5691 = {
::
capnp
::
word
const
*
const
bp_c8cb212fcd9f5691
=
b_c8cb212fcd9f5691
.
words
;
#if !CAPNP_LITE
static
const
::
capnp
::
_
::
RawSchema
*
const
d_c8cb212fcd9f5691
[]
=
{
&
s_
c98603600e7ffbf6
,
&
s_f
8d831c87ab7a90f
,
&
s_
b76848c18c40efbf
,
&
s_f
76fba59183073a5
,
};
static
const
uint16_t
m_c8cb212fcd9f5691
[]
=
{
0
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_c8cb212fcd9f5691
[]
=
{
...
...
@@ -63,19 +71,19 @@ const ::capnp::_::RawBrandedSchema::Dependency bd_c8cb212fcd9f5691[] = {
{
50331648
,
::
capnp
::
Persistent
<>::
SaveResults
::
_capnpPrivate
::
brand
},
};
const
::
capnp
::
_
::
RawSchema
s_c8cb212fcd9f5691
=
{
0xc8cb212fcd9f5691
,
b_c8cb212fcd9f5691
.
words
,
44
,
d_c8cb212fcd9f5691
,
m_c8cb212fcd9f5691
,
0xc8cb212fcd9f5691
,
b_c8cb212fcd9f5691
.
words
,
52
,
d_c8cb212fcd9f5691
,
m_c8cb212fcd9f5691
,
2
,
1
,
nullptr
,
nullptr
,
nullptr
,
{
&
s_c8cb212fcd9f5691
,
nullptr
,
bd_c8cb212fcd9f5691
,
0
,
sizeof
(
bd_c8cb212fcd9f5691
)
/
sizeof
(
bd_c8cb212fcd9f5691
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
static
const
::
capnp
::
_
::
AlignedData
<
1
8
>
b_c98603600e7ffbf6
=
{
static
const
::
capnp
::
_
::
AlignedData
<
1
9
>
b_f76fba59183073a5
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
246
,
251
,
127
,
14
,
96
,
3
,
134
,
201
,
165
,
115
,
48
,
24
,
89
,
186
,
111
,
247
,
34
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
20
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
1
14
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
1
06
,
1
,
0
,
0
,
41
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
...
...
@@ -84,37 +92,39 @@ static const ::capnp::_::AlignedData<18> b_c98603600e7ffbf6 = {
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
80
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
115
,
97
,
118
,
101
,
36
,
80
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
0
,
}
116
,
46
,
83
,
97
,
118
,
101
,
80
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
}
};
::
capnp
::
word
const
*
const
bp_
c98603600e7ffbf6
=
b_c98603600e7ffbf6
.
words
;
::
capnp
::
word
const
*
const
bp_
f76fba59183073a5
=
b_f76fba59183073a5
.
words
;
#if !CAPNP_LITE
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_
c98603600e7ffbf6
[]
=
{
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_
f76fba59183073a5
[]
=
{
};
const
::
capnp
::
_
::
RawSchema
s_
c98603600e7ffbf6
=
{
0x
c98603600e7ffbf6
,
b_c98603600e7ffbf6
.
words
,
18
,
nullptr
,
nullptr
,
0
,
0
,
nullptr
,
nullptr
,
nullptr
,
{
&
s_
c98603600e7ffbf6
,
nullptr
,
bd_c98603600e7ffbf6
,
0
,
sizeof
(
bd_c98603600e7ffbf6
)
/
sizeof
(
bd_c98603600e7ffbf6
[
0
]),
nullptr
}
const
::
capnp
::
_
::
RawSchema
s_
f76fba59183073a5
=
{
0x
f76fba59183073a5
,
b_f76fba59183073a5
.
words
,
19
,
nullptr
,
nullptr
,
0
,
0
,
nullptr
,
nullptr
,
nullptr
,
{
&
s_
f76fba59183073a5
,
nullptr
,
bd_f76fba59183073a5
,
0
,
sizeof
(
bd_f76fba59183073a5
)
/
sizeof
(
bd_f76fba59183073a5
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
static
const
::
capnp
::
_
::
AlignedData
<
3
5
>
b_f8d831c87ab7a90
f
=
{
static
const
::
capnp
::
_
::
AlignedData
<
3
6
>
b_b76848c18c40efb
f
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
15
,
169
,
183
,
122
,
200
,
49
,
216
,
248
,
191
,
239
,
64
,
140
,
193
,
72
,
104
,
183
,
34
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
20
0
,
1
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
1
22
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
1
14
,
1
,
0
,
0
,
41
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
3
,
0
,
0
,
0
,
63
,
0
,
0
,
0
,
3
7
,
0
,
0
,
0
,
63
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
99
,
97
,
112
,
110
,
112
,
47
,
112
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
80
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
115
,
97
,
118
,
101
,
36
,
82
,
101
,
115
,
117
,
108
,
116
,
115
,
0
,
0
,
116
,
46
,
83
,
97
,
118
,
101
,
82
,
101
,
115
,
117
,
108
,
116
,
115
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
4
,
0
,
0
,
0
,
3
,
0
,
4
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
...
...
@@ -133,15 +143,303 @@ static const ::capnp::_::AlignedData<35> b_f8d831c87ab7a90f = {
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
}
};
::
capnp
::
word
const
*
const
bp_f8d831c87ab7a90f
=
b_f8d831c87ab7a90f
.
words
;
::
capnp
::
word
const
*
const
bp_b76848c18c40efbf
=
b_b76848c18c40efbf
.
words
;
#if !CAPNP_LITE
static
const
uint16_t
m_b76848c18c40efbf
[]
=
{
0
};
static
const
uint16_t
i_b76848c18c40efbf
[]
=
{
0
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_b76848c18c40efbf
[]
=
{
};
const
::
capnp
::
_
::
RawSchema
s_b76848c18c40efbf
=
{
0xb76848c18c40efbf
,
b_b76848c18c40efbf
.
words
,
36
,
nullptr
,
m_b76848c18c40efbf
,
0
,
1
,
i_b76848c18c40efbf
,
nullptr
,
nullptr
,
{
&
s_b76848c18c40efbf
,
nullptr
,
bd_b76848c18c40efbf
,
0
,
sizeof
(
bd_b76848c18c40efbf
)
/
sizeof
(
bd_b76848c18c40efbf
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
static
const
::
capnp
::
_
::
AlignedData
<
81
>
b_84ff286cd00a3ed4
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
23
,
0
,
0
,
0
,
3
,
0
,
0
,
0
,
215
,
238
,
63
,
152
,
54
,
8
,
99
,
184
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
34
,
1
,
0
,
0
,
37
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
33
,
0
,
0
,
0
,
135
,
0
,
0
,
0
,
249
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
249
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
99
,
97
,
112
,
110
,
112
,
47
,
112
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
82
,
101
,
97
,
108
,
109
,
71
,
97
,
116
,
101
,
119
,
97
,
121
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
8
,
0
,
0
,
0
,
3
,
0
,
5
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
77
,
87
,
9
,
57
,
29
,
204
,
194
,
240
,
191
,
239
,
64
,
140
,
193
,
72
,
104
,
183
,
49
,
0
,
0
,
0
,
58
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
44
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
60
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
105
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
170
,
163
,
45
,
72
,
139
,
161
,
175
,
236
,
191
,
239
,
64
,
140
,
193
,
72
,
104
,
183
,
93
,
0
,
0
,
0
,
58
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
104
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
149
,
0
,
0
,
0
,
7
,
0
,
0
,
0
,
105
,
109
,
112
,
111
,
114
,
116
,
0
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
101
,
120
,
112
,
111
,
114
,
116
,
0
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
8
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
5
,
0
,
0
,
0
,
98
,
0
,
0
,
0
,
9
,
0
,
0
,
0
,
98
,
0
,
0
,
0
,
73
,
110
,
116
,
101
,
114
,
110
,
97
,
108
,
82
,
101
,
102
,
0
,
0
,
0
,
0
,
0
,
69
,
120
,
116
,
101
,
114
,
110
,
97
,
108
,
82
,
101
,
102
,
0
,
0
,
0
,
0
,
0
,
}
};
::
capnp
::
word
const
*
const
bp_84ff286cd00a3ed4
=
b_84ff286cd00a3ed4
.
words
;
#if !CAPNP_LITE
static
const
::
capnp
::
_
::
RawSchema
*
const
d_84ff286cd00a3ed4
[]
=
{
&
s_b76848c18c40efbf
,
&
s_ecafa18b482da3aa
,
&
s_f0c2cc1d3909574d
,
};
static
const
uint16_t
m_84ff286cd00a3ed4
[]
=
{
1
,
0
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_84ff286cd00a3ed4
[]
=
{
{
33554432
,
::
capnp
::
RealmGateway
<>::
ImportParams
::
_capnpPrivate
::
brand
},
{
33554433
,
::
capnp
::
RealmGateway
<>::
ExportParams
::
_capnpPrivate
::
brand
},
{
50331648
,
::
capnp
::
Persistent
<>::
SaveResults
::
_capnpPrivate
::
brand
},
{
50331649
,
::
capnp
::
Persistent
<>::
SaveResults
::
_capnpPrivate
::
brand
},
};
const
::
capnp
::
_
::
RawSchema
s_84ff286cd00a3ed4
=
{
0x84ff286cd00a3ed4
,
b_84ff286cd00a3ed4
.
words
,
81
,
d_84ff286cd00a3ed4
,
m_84ff286cd00a3ed4
,
3
,
2
,
nullptr
,
nullptr
,
nullptr
,
{
&
s_84ff286cd00a3ed4
,
nullptr
,
bd_84ff286cd00a3ed4
,
0
,
sizeof
(
bd_84ff286cd00a3ed4
)
/
sizeof
(
bd_84ff286cd00a3ed4
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
static
const
::
capnp
::
_
::
AlignedData
<
74
>
b_f0c2cc1d3909574d
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
77
,
87
,
9
,
57
,
29
,
204
,
194
,
240
,
36
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
2
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
146
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
37
,
0
,
0
,
0
,
119
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
99
,
97
,
112
,
110
,
112
,
47
,
112
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
82
,
101
,
97
,
108
,
109
,
71
,
97
,
116
,
101
,
119
,
97
,
121
,
46
,
105
,
109
,
112
,
111
,
114
,
116
,
36
,
80
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
0
,
0
,
0
,
3
,
0
,
4
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
41
,
0
,
0
,
0
,
34
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
36
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
96
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
93
,
0
,
0
,
0
,
58
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
148
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
99
,
97
,
112
,
0
,
0
,
0
,
0
,
0
,
17
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
17
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
112
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
16
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
165
,
115
,
48
,
24
,
89
,
186
,
111
,
247
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
16
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
}
};
::
capnp
::
word
const
*
const
bp_f0c2cc1d3909574d
=
b_f0c2cc1d3909574d
.
words
;
#if !CAPNP_LITE
static
const
::
capnp
::
_
::
RawSchema
*
const
d_f0c2cc1d3909574d
[]
=
{
&
s_c8cb212fcd9f5691
,
&
s_f76fba59183073a5
,
};
static
const
uint16_t
m_f0c2cc1d3909574d
[]
=
{
0
,
1
};
static
const
uint16_t
i_f0c2cc1d3909574d
[]
=
{
0
,
1
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_f0c2cc1d3909574d
[]
=
{
{
16777216
,
::
capnp
::
Persistent
<>::
_capnpPrivate
::
brand
},
{
16777217
,
::
capnp
::
Persistent
<>::
SaveParams
::
_capnpPrivate
::
brand
},
};
const
::
capnp
::
_
::
RawSchema
s_f0c2cc1d3909574d
=
{
0xf0c2cc1d3909574d
,
b_f0c2cc1d3909574d
.
words
,
74
,
d_f0c2cc1d3909574d
,
m_f0c2cc1d3909574d
,
2
,
2
,
i_f0c2cc1d3909574d
,
nullptr
,
nullptr
,
{
&
s_f0c2cc1d3909574d
,
nullptr
,
bd_f0c2cc1d3909574d
,
0
,
sizeof
(
bd_f0c2cc1d3909574d
)
/
sizeof
(
bd_f0c2cc1d3909574d
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
static
const
::
capnp
::
_
::
AlignedData
<
74
>
b_ecafa18b482da3aa
=
{
{
0
,
0
,
0
,
0
,
5
,
0
,
6
,
0
,
170
,
163
,
45
,
72
,
139
,
161
,
175
,
236
,
36
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
2
,
0
,
7
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
21
,
0
,
0
,
0
,
146
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
37
,
0
,
0
,
0
,
119
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
99
,
97
,
112
,
110
,
112
,
47
,
112
,
101
,
114
,
115
,
105
,
115
,
116
,
101
,
110
,
116
,
46
,
99
,
97
,
112
,
110
,
112
,
58
,
82
,
101
,
97
,
108
,
109
,
71
,
97
,
116
,
101
,
119
,
97
,
121
,
46
,
101
,
120
,
112
,
111
,
114
,
116
,
36
,
80
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
8
,
0
,
0
,
0
,
3
,
0
,
4
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
41
,
0
,
0
,
0
,
34
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
36
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
96
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
93
,
0
,
0
,
0
,
58
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
88
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
148
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
99
,
97
,
112
,
0
,
0
,
0
,
0
,
0
,
17
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
17
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
112
,
97
,
114
,
97
,
109
,
115
,
0
,
0
,
16
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
165
,
115
,
48
,
24
,
89
,
186
,
111
,
247
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
31
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
2
,
0
,
1
,
0
,
145
,
86
,
159
,
205
,
47
,
33
,
203
,
200
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
23
,
0
,
0
,
0
,
4
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
3
,
0
,
1
,
0
,
18
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
0
,
1
,
0
,
0
,
0
,
0
,
0
,
212
,
62
,
10
,
208
,
108
,
40
,
255
,
132
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
16
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
}
};
::
capnp
::
word
const
*
const
bp_ecafa18b482da3aa
=
b_ecafa18b482da3aa
.
words
;
#if !CAPNP_LITE
static
const
uint16_t
m_f8d831c87ab7a90f
[]
=
{
0
};
static
const
uint16_t
i_f8d831c87ab7a90f
[]
=
{
0
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_f8d831c87ab7a90f
[]
=
{
static
const
::
capnp
::
_
::
RawSchema
*
const
d_ecafa18b482da3aa
[]
=
{
&
s_c8cb212fcd9f5691
,
&
s_f76fba59183073a5
,
};
static
const
uint16_t
m_ecafa18b482da3aa
[]
=
{
0
,
1
};
static
const
uint16_t
i_ecafa18b482da3aa
[]
=
{
0
,
1
};
const
::
capnp
::
_
::
RawBrandedSchema
::
Dependency
bd_ecafa18b482da3aa
[]
=
{
{
16777216
,
::
capnp
::
Persistent
<>::
_capnpPrivate
::
brand
},
{
16777217
,
::
capnp
::
Persistent
<>::
SaveParams
::
_capnpPrivate
::
brand
},
};
const
::
capnp
::
_
::
RawSchema
s_
f8d831c87ab7a90f
=
{
0x
f8d831c87ab7a90f
,
b_f8d831c87ab7a90f
.
words
,
35
,
nullptr
,
m_f8d831c87ab7a90f
,
0
,
1
,
i_f8d831c87ab7a90f
,
nullptr
,
nullptr
,
{
&
s_f8d831c87ab7a90f
,
nullptr
,
bd_f8d831c87ab7a90f
,
0
,
sizeof
(
bd_f8d831c87ab7a90f
)
/
sizeof
(
bd_f8d831c87ab7a90f
[
0
]),
nullptr
}
const
::
capnp
::
_
::
RawSchema
s_
ecafa18b482da3aa
=
{
0x
ecafa18b482da3aa
,
b_ecafa18b482da3aa
.
words
,
74
,
d_ecafa18b482da3aa
,
m_ecafa18b482da3aa
,
2
,
2
,
i_ecafa18b482da3aa
,
nullptr
,
nullptr
,
{
&
s_ecafa18b482da3aa
,
nullptr
,
bd_ecafa18b482da3aa
,
0
,
sizeof
(
bd_ecafa18b482da3aa
)
/
sizeof
(
bd_ecafa18b482da3aa
[
0
]),
nullptr
}
};
#endif // !CAPNP_LITE
}
// namespace schemas
...
...
c++/src/capnp/persistent.capnp.h
View file @
6b35c286
...
...
@@ -18,8 +18,11 @@ namespace capnp {
namespace
schemas
{
CAPNP_DECLARE_SCHEMA
(
c8cb212fcd9f5691
);
CAPNP_DECLARE_SCHEMA
(
c98603600e7ffbf6
);
CAPNP_DECLARE_SCHEMA
(
f8d831c87ab7a90f
);
CAPNP_DECLARE_SCHEMA
(
f76fba59183073a5
);
CAPNP_DECLARE_SCHEMA
(
b76848c18c40efbf
);
CAPNP_DECLARE_SCHEMA
(
84
ff286cd00a3ed4
);
CAPNP_DECLARE_SCHEMA
(
f0c2cc1d3909574d
);
CAPNP_DECLARE_SCHEMA
(
ecafa18b482da3aa
);
}
// namespace schemas
}
// namespace capnp
...
...
@@ -49,7 +52,7 @@ struct Persistent<SturdyRef>::SaveParams {
class
Builder
;
class
Pipeline
;
CAPNP_DECLARE_TEMPLATE_STRUCT
(
c98603600e7ffbf6
,
0
,
0
,
SturdyRef
);
CAPNP_DECLARE_TEMPLATE_STRUCT
(
f76fba59183073a5
,
0
,
0
,
SturdyRef
);
};
template
<
typename
SturdyRef
>
...
...
@@ -60,7 +63,44 @@ struct Persistent<SturdyRef>::SaveResults {
class
Builder
;
class
Pipeline
;
CAPNP_DECLARE_TEMPLATE_STRUCT
(
f8d831c87ab7a90f
,
0
,
1
,
SturdyRef
);
CAPNP_DECLARE_TEMPLATE_STRUCT
(
b76848c18c40efbf
,
0
,
1
,
SturdyRef
);
};
template
<
typename
InternalRef
=
::
capnp
::
AnyPointer
,
typename
ExternalRef
=
::
capnp
::
AnyPointer
>
struct
RealmGateway
{
RealmGateway
()
=
delete
;
#if !CAPNP_LITE
class
Client
;
class
Server
;
#endif // !CAPNP_LITE
struct
ImportParams
;
struct
ExportParams
;
CAPNP_DECLARE_TEMPLATE_INTERFACE
(
84
ff286cd00a3ed4
,
InternalRef
,
ExternalRef
);
};
template
<
typename
InternalRef
,
typename
ExternalRef
>
struct
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
{
ImportParams
()
=
delete
;
class
Reader
;
class
Builder
;
class
Pipeline
;
CAPNP_DECLARE_TEMPLATE_STRUCT
(
f0c2cc1d3909574d
,
0
,
2
,
InternalRef
,
ExternalRef
);
};
template
<
typename
InternalRef
,
typename
ExternalRef
>
struct
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
{
ExportParams
()
=
delete
;
class
Reader
;
class
Builder
;
class
Pipeline
;
CAPNP_DECLARE_TEMPLATE_STRUCT
(
ecafa18b482da3aa
,
0
,
2
,
InternalRef
,
ExternalRef
);
};
// =======================================================================================
...
...
@@ -103,9 +143,7 @@ public:
override
;
protected
:
typedef
typename
::
capnp
::
Persistent
<
SturdyRef
>::
SaveParams
SaveParams
;
typedef
typename
::
capnp
::
Persistent
<
SturdyRef
>::
SaveResults
SaveResults
;
typedef
::
capnp
::
CallContext
<
SaveParams
,
SaveResults
>
SaveContext
;
typedef
::
capnp
::
CallContext
<
typename
::
capnp
::
Persistent
<
SturdyRef
>::
SaveParams
,
typename
::
capnp
::
Persistent
<
SturdyRef
>::
SaveResults
>
SaveContext
;
virtual
::
kj
::
Promise
<
void
>
save
(
SaveContext
context
);
::
kj
::
Promise
<
void
>
dispatchCallInternal
(
uint16_t
methodId
,
...
...
@@ -179,6 +217,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -262,6 +301,255 @@ public:
inline
::
capnp
::
PipelineFor
<
SturdyRef
>
getSturdyRef
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
#endif // !CAPNP_LITE
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
:
public
virtual
::
capnp
::
Capability
::
Client
{
public
:
typedef
RealmGateway
<
InternalRef
,
ExternalRef
>
Calls
;
typedef
RealmGateway
<
InternalRef
,
ExternalRef
>
Reads
;
Client
(
decltype
(
nullptr
));
explicit
Client
(
::
kj
::
Own
<
::
capnp
::
ClientHook
>&&
hook
);
template
<
typename
_t
,
typename
=
::
kj
::
EnableIf
<
::
kj
::
canConvert
<
_t
*
,
Server
*>
()
>>
Client
(
::
kj
::
Own
<
_t
>&&
server
);
template
<
typename
_t
,
typename
=
::
kj
::
EnableIf
<
::
kj
::
canConvert
<
_t
*
,
Client
*>
()
>>
Client
(
::
kj
::
Promise
<
_t
>&&
promise
);
Client
(
::
kj
::
Exception
&&
exception
);
Client
(
Client
&
)
=
default
;
Client
(
Client
&&
)
=
default
;
Client
&
operator
=
(
Client
&
other
);
Client
&
operator
=
(
Client
&&
other
);
::
capnp
::
Request
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
,
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
>
importRequest
(
::
kj
::
Maybe
<
::
capnp
::
MessageSize
>
sizeHint
=
nullptr
);
::
capnp
::
Request
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
,
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
>
exportRequest
(
::
kj
::
Maybe
<
::
capnp
::
MessageSize
>
sizeHint
=
nullptr
);
protected
:
Client
()
=
default
;
};
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
Server
:
public
virtual
::
capnp
::
Capability
::
Server
{
public
:
typedef
RealmGateway
<
InternalRef
,
ExternalRef
>
Serves
;
::
kj
::
Promise
<
void
>
dispatchCall
(
uint64_t
interfaceId
,
uint16_t
methodId
,
::
capnp
::
CallContext
<
::
capnp
::
AnyPointer
,
::
capnp
::
AnyPointer
>
context
)
override
;
protected
:
typedef
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
ImportParams
;
typedef
::
capnp
::
CallContext
<
ImportParams
,
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
>
ImportContext
;
virtual
::
kj
::
Promise
<
void
>
import
(
ImportContext
context
);
typedef
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
ExportParams
;
typedef
::
capnp
::
CallContext
<
ExportParams
,
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
>
ExportContext
;
virtual
::
kj
::
Promise
<
void
>
export_
(
ExportContext
context
);
::
kj
::
Promise
<
void
>
dispatchCallInternal
(
uint16_t
methodId
,
::
capnp
::
CallContext
<
::
capnp
::
AnyPointer
,
::
capnp
::
AnyPointer
>
context
);
};
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Reader
{
public
:
typedef
ImportParams
Reads
;
Reader
()
=
default
;
inline
explicit
Reader
(
::
capnp
::
_
::
StructReader
base
)
:
_reader
(
base
)
{}
inline
::
capnp
::
MessageSize
totalSize
()
const
{
return
_reader
.
totalSize
().
asPublic
();
}
#if !CAPNP_LITE
inline
::
kj
::
StringTree
toString
()
const
{
return
::
capnp
::
_
::
structString
(
_reader
,
*
_capnpPrivate
::
brand
);
}
#endif // !CAPNP_LITE
inline
bool
hasCap
()
const
;
#if !CAPNP_LITE
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
getCap
()
const
;
#endif // !CAPNP_LITE
inline
bool
hasParams
()
const
;
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Reader
getParams
()
const
;
private
:
::
capnp
::
_
::
StructReader
_reader
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
_
::
PointerHelpers
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
List
;
friend
class
::
capnp
::
MessageBuilder
;
friend
class
::
capnp
::
Orphanage
;
};
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
{
public
:
typedef
ImportParams
Builds
;
Builder
()
=
delete
;
// Deleted to discourage incorrect usage.
// You can explicitly initialize to nullptr instead.
inline
Builder
(
decltype
(
nullptr
))
{}
inline
explicit
Builder
(
::
capnp
::
_
::
StructBuilder
base
)
:
_builder
(
base
)
{}
inline
operator
Reader
()
const
{
return
Reader
(
_builder
.
asReader
());
}
inline
Reader
asReader
()
const
{
return
*
this
;
}
inline
::
capnp
::
MessageSize
totalSize
()
const
{
return
asReader
().
totalSize
();
}
#if !CAPNP_LITE
inline
::
kj
::
StringTree
toString
()
const
{
return
asReader
().
toString
();
}
#endif // !CAPNP_LITE
inline
bool
hasCap
();
#if !CAPNP_LITE
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
getCap
();
inline
void
setCap
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
&&
value
);
inline
void
setCap
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
&
value
);
inline
void
adoptCap
(
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
ExternalRef
>>&&
value
);
inline
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
ExternalRef
>>
disownCap
();
#endif // !CAPNP_LITE
inline
bool
hasParams
();
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Builder
getParams
();
inline
void
setParams
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Reader
value
);
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Builder
initParams
();
inline
void
adoptParams
(
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>&&
value
);
inline
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>
disownParams
();
private
:
::
capnp
::
_
::
StructBuilder
_builder
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
friend
class
::
capnp
::
Orphanage
;
};
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Pipeline
{
public
:
typedef
ImportParams
Pipelines
;
inline
Pipeline
(
decltype
(
nullptr
))
:
_typeless
(
nullptr
)
{}
inline
explicit
Pipeline
(
::
capnp
::
AnyPointer
::
Pipeline
&&
typeless
)
:
_typeless
(
kj
::
mv
(
typeless
))
{}
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
getCap
();
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Pipeline
getParams
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Reader
{
public
:
typedef
ExportParams
Reads
;
Reader
()
=
default
;
inline
explicit
Reader
(
::
capnp
::
_
::
StructReader
base
)
:
_reader
(
base
)
{}
inline
::
capnp
::
MessageSize
totalSize
()
const
{
return
_reader
.
totalSize
().
asPublic
();
}
#if !CAPNP_LITE
inline
::
kj
::
StringTree
toString
()
const
{
return
::
capnp
::
_
::
structString
(
_reader
,
*
_capnpPrivate
::
brand
);
}
#endif // !CAPNP_LITE
inline
bool
hasCap
()
const
;
#if !CAPNP_LITE
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
getCap
()
const
;
#endif // !CAPNP_LITE
inline
bool
hasParams
()
const
;
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Reader
getParams
()
const
;
private
:
::
capnp
::
_
::
StructReader
_reader
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
_
::
PointerHelpers
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
List
;
friend
class
::
capnp
::
MessageBuilder
;
friend
class
::
capnp
::
Orphanage
;
};
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
{
public
:
typedef
ExportParams
Builds
;
Builder
()
=
delete
;
// Deleted to discourage incorrect usage.
// You can explicitly initialize to nullptr instead.
inline
Builder
(
decltype
(
nullptr
))
{}
inline
explicit
Builder
(
::
capnp
::
_
::
StructBuilder
base
)
:
_builder
(
base
)
{}
inline
operator
Reader
()
const
{
return
Reader
(
_builder
.
asReader
());
}
inline
Reader
asReader
()
const
{
return
*
this
;
}
inline
::
capnp
::
MessageSize
totalSize
()
const
{
return
asReader
().
totalSize
();
}
#if !CAPNP_LITE
inline
::
kj
::
StringTree
toString
()
const
{
return
asReader
().
toString
();
}
#endif // !CAPNP_LITE
inline
bool
hasCap
();
#if !CAPNP_LITE
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
getCap
();
inline
void
setCap
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
&&
value
);
inline
void
setCap
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
&
value
);
inline
void
adoptCap
(
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
InternalRef
>>&&
value
);
inline
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
InternalRef
>>
disownCap
();
#endif // !CAPNP_LITE
inline
bool
hasParams
();
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Builder
getParams
();
inline
void
setParams
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Reader
value
);
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Builder
initParams
();
inline
void
adoptParams
(
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>&&
value
);
inline
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>
disownParams
();
private
:
::
capnp
::
_
::
StructBuilder
_builder
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
friend
class
::
capnp
::
Orphanage
;
};
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
class
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Pipeline
{
public
:
typedef
ExportParams
Pipelines
;
inline
Pipeline
(
decltype
(
nullptr
))
:
_typeless
(
nullptr
)
{}
inline
explicit
Pipeline
(
::
capnp
::
AnyPointer
::
Pipeline
&&
typeless
)
:
_typeless
(
kj
::
mv
(
typeless
))
{}
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
getCap
();
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Pipeline
getParams
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -301,7 +589,7 @@ inline typename ::capnp::Persistent<SturdyRef>::Client& Persistent<SturdyRef>::
#endif // !CAPNP_LITE
CAPNP_DEFINE_TEMPLATE_STRUCT
(
Persistent
<
SturdyRef
>::
SaveParams
,
template
<
typename
SturdyRef
>
,
c98603600e7ffbf6
,
{
,
f76fba59183073a5
,
{
{
0xc8cb212fcd9f5691
CAPNP_COMMA
brandBindings
+
0
CAPNP_COMMA
1
CAPNP_COMMA
false
}
CAPNP_COMMA
},
{
::
capnp
::
_
::
brandBindingFor
<
SturdyRef
>
()
CAPNP_COMMA
...
...
@@ -359,7 +647,7 @@ inline ::capnp::Orphan<SturdyRef> Persistent<SturdyRef>::SaveResults::Builder::d
}
CAPNP_DEFINE_TEMPLATE_STRUCT
(
Persistent
<
SturdyRef
>::
SaveResults
,
template
<
typename
SturdyRef
>
,
f8d831c87ab7a90
f
,
{
,
b76848c18c40efb
f
,
{
{
0xc8cb212fcd9f5691
CAPNP_COMMA
brandBindings
+
0
CAPNP_COMMA
1
CAPNP_COMMA
false
}
CAPNP_COMMA
},
{
::
capnp
::
_
::
brandBindingFor
<
SturdyRef
>
()
CAPNP_COMMA
...
...
@@ -414,6 +702,308 @@ CAPNP_DEFINE_TEMPLATE_INTERFACE(Persistent<SturdyRef>, template <typename Sturdy
{
33554432
CAPNP_COMMA
::
capnp
::
Persistent
<
SturdyRef
>::
SaveParams
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
50331648
CAPNP_COMMA
::
capnp
::
Persistent
<
SturdyRef
>::
SaveResults
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
});
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
Client
(
decltype
(
nullptr
))
:
::
capnp
::
Capability
::
Client
(
nullptr
)
{}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
Client
(
::
kj
::
Own
<
::
capnp
::
ClientHook
>&&
hook
)
:
::
capnp
::
Capability
::
Client
(
::
kj
::
mv
(
hook
))
{}
template
<
typename
InternalRef
,
typename
ExternalRef
>
template
<
typename
_t
,
typename
>
inline
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
Client
(
::
kj
::
Own
<
_t
>&&
server
)
:
::
capnp
::
Capability
::
Client
(
::
kj
::
mv
(
server
))
{}
template
<
typename
InternalRef
,
typename
ExternalRef
>
template
<
typename
_t
,
typename
>
inline
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
Client
(
::
kj
::
Promise
<
_t
>&&
promise
)
:
::
capnp
::
Capability
::
Client
(
::
kj
::
mv
(
promise
))
{}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
Client
(
::
kj
::
Exception
&&
exception
)
:
::
capnp
::
Capability
::
Client
(
::
kj
::
mv
(
exception
))
{}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
&
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
operator
=
(
Client
&
other
)
{
::
capnp
::
Capability
::
Client
::
operator
=
(
other
);
return
*
this
;
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
&
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
operator
=
(
Client
&&
other
)
{
::
capnp
::
Capability
::
Client
::
operator
=
(
kj
::
mv
(
other
));
return
*
this
;
}
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Reader
::
hasCap
()
const
{
return
!
_reader
.
getPointerField
(
0
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
hasCap
()
{
return
!
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
).
isNull
();
}
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Reader
::
getCap
()
const
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
get
(
_reader
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
getCap
()
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
get
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Pipeline
::
getCap
()
{
return
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
(
_typeless
.
getPointerField
(
0
).
asCap
());
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
setCap
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
&&
cap
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
set
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
kj
::
mv
(
cap
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
setCap
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
Client
&
cap
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
set
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
cap
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
adoptCap
(
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
ExternalRef
>>&&
value
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
adopt
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
kj
::
mv
(
value
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
ExternalRef
>>
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
disownCap
()
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
ExternalRef
>>::
disown
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Reader
::
hasParams
()
const
{
return
!
_reader
.
getPointerField
(
1
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
hasParams
()
{
return
!
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Reader
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Reader
::
getParams
()
const
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
get
(
_reader
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Builder
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
getParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
get
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Pipeline
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Pipeline
::
getParams
()
{
return
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Pipeline
(
_typeless
.
getPointerField
(
1
));
}
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
setParams
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Reader
value
)
{
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
set
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
),
value
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
Builder
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
initParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
init
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
adoptParams
(
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>&&
value
)
{
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
adopt
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
),
kj
::
mv
(
value
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
::
Builder
::
disownParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
>::
disown
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
CAPNP_DEFINE_TEMPLATE_STRUCT
(
RealmGateway
<
InternalRef
CAPNP_COMMA
ExternalRef
>::
ImportParams
,
template
<
typename
InternalRef
CAPNP_COMMA
typename
ExternalRef
>
,
f0c2cc1d3909574d
,
{
{
0x84ff286cd00a3ed4
CAPNP_COMMA
brandBindings
+
0
CAPNP_COMMA
2
CAPNP_COMMA
false
}
CAPNP_COMMA
},
{
::
capnp
::
_
::
brandBindingFor
<
InternalRef
>
()
CAPNP_COMMA
::
capnp
::
_
::
brandBindingFor
<
ExternalRef
>
()
CAPNP_COMMA
},
{
{
16777216
CAPNP_COMMA
::
capnp
::
Persistent
<
ExternalRef
>::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
16777217
CAPNP_COMMA
::
capnp
::
Persistent
<
InternalRef
>::
SaveParams
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
});
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Reader
::
hasCap
()
const
{
return
!
_reader
.
getPointerField
(
0
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
hasCap
()
{
return
!
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
).
isNull
();
}
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Reader
::
getCap
()
const
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
get
(
_reader
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
getCap
()
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
get
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Pipeline
::
getCap
()
{
return
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
(
_typeless
.
getPointerField
(
0
).
asCap
());
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
setCap
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
&&
cap
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
set
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
kj
::
mv
(
cap
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
setCap
(
typename
::
capnp
::
Persistent
<
InternalRef
>::
Client
&
cap
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
set
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
cap
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
adoptCap
(
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
InternalRef
>>&&
value
)
{
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
adopt
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
),
kj
::
mv
(
value
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
::
capnp
::
Orphan
<
::
capnp
::
Persistent
<
InternalRef
>>
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
disownCap
()
{
return
::
capnp
::
_
::
PointerHelpers
<
::
capnp
::
Persistent
<
InternalRef
>>::
disown
(
_builder
.
getPointerField
(
0
*
::
capnp
::
POINTERS
));
}
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Reader
::
hasParams
()
const
{
return
!
_reader
.
getPointerField
(
1
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
bool
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
hasParams
()
{
return
!
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
).
isNull
();
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Reader
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Reader
::
getParams
()
const
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
get
(
_reader
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Builder
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
getParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
get
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Pipeline
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Pipeline
::
getParams
()
{
return
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Pipeline
(
_typeless
.
getPointerField
(
1
));
}
#endif // !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
setParams
(
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Reader
value
)
{
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
set
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
),
value
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
Builder
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
initParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
init
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
void
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
adoptParams
(
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>&&
value
)
{
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
adopt
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
),
kj
::
mv
(
value
));
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
inline
::
capnp
::
Orphan
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
::
Builder
::
disownParams
()
{
return
::
capnp
::
_
::
PointerHelpers
<
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
>::
disown
(
_builder
.
getPointerField
(
1
*
::
capnp
::
POINTERS
));
}
CAPNP_DEFINE_TEMPLATE_STRUCT
(
RealmGateway
<
InternalRef
CAPNP_COMMA
ExternalRef
>::
ExportParams
,
template
<
typename
InternalRef
CAPNP_COMMA
typename
ExternalRef
>
,
ecafa18b482da3aa
,
{
{
0x84ff286cd00a3ed4
CAPNP_COMMA
brandBindings
+
0
CAPNP_COMMA
2
CAPNP_COMMA
false
}
CAPNP_COMMA
},
{
::
capnp
::
_
::
brandBindingFor
<
InternalRef
>
()
CAPNP_COMMA
::
capnp
::
_
::
brandBindingFor
<
ExternalRef
>
()
CAPNP_COMMA
},
{
{
16777216
CAPNP_COMMA
::
capnp
::
Persistent
<
InternalRef
>::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
16777217
CAPNP_COMMA
::
capnp
::
Persistent
<
ExternalRef
>::
SaveParams
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
});
#if !CAPNP_LITE
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
capnp
::
Request
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
,
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
importRequest
(
::
kj
::
Maybe
<
::
capnp
::
MessageSize
>
sizeHint
)
{
return
newCall
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
,
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
>
(
0x84ff286cd00a3ed4ull
,
0
,
sizeHint
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
kj
::
Promise
<
void
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Server
::
import
(
ImportContext
)
{
return
::
capnp
::
Capability
::
Server
::
internalUnimplemented
(
"capnp/persistent.capnp:RealmGateway"
,
"import"
,
0x84ff286cd00a3ed4ull
,
0
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
capnp
::
Request
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
,
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
::
exportRequest
(
::
kj
::
Maybe
<
::
capnp
::
MessageSize
>
sizeHint
)
{
return
newCall
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
,
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
>
(
0x84ff286cd00a3ed4ull
,
1
,
sizeHint
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
kj
::
Promise
<
void
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Server
::
export_
(
ExportContext
)
{
return
::
capnp
::
Capability
::
Server
::
internalUnimplemented
(
"capnp/persistent.capnp:RealmGateway"
,
"export"
,
0x84ff286cd00a3ed4ull
,
1
);
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
kj
::
Promise
<
void
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Server
::
dispatchCall
(
uint64_t
interfaceId
,
uint16_t
methodId
,
::
capnp
::
CallContext
<
::
capnp
::
AnyPointer
,
::
capnp
::
AnyPointer
>
context
)
{
switch
(
interfaceId
)
{
case
0x84ff286cd00a3ed4ull
:
return
dispatchCallInternal
(
methodId
,
context
);
default
:
return
internalUnimplemented
(
"capnp/persistent.capnp:RealmGateway"
,
interfaceId
);
}
}
template
<
typename
InternalRef
,
typename
ExternalRef
>
::
kj
::
Promise
<
void
>
RealmGateway
<
InternalRef
,
ExternalRef
>::
Server
::
dispatchCallInternal
(
uint16_t
methodId
,
::
capnp
::
CallContext
<
::
capnp
::
AnyPointer
,
::
capnp
::
AnyPointer
>
context
)
{
switch
(
methodId
)
{
case
0
:
return
import
(
::
capnp
::
Capability
::
Server
::
internalGetTypedContext
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ImportParams
,
typename
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
>
(
context
));
case
1
:
return
export_
(
::
capnp
::
Capability
::
Server
::
internalGetTypedContext
<
typename
::
capnp
::
RealmGateway
<
InternalRef
,
ExternalRef
>::
ExportParams
,
typename
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
>
(
context
));
default
:
return
::
capnp
::
Capability
::
Server
::
internalUnimplemented
(
"capnp/persistent.capnp:RealmGateway"
,
0x84ff286cd00a3ed4ull
,
methodId
);
}
}
#endif // !CAPNP_LITE
CAPNP_DEFINE_TEMPLATE_INTERFACE
(
RealmGateway
<
InternalRef
CAPNP_COMMA
ExternalRef
>
,
template
<
typename
InternalRef
CAPNP_COMMA
typename
ExternalRef
>
,
84
ff286cd00a3ed4
,
{
{
0x84ff286cd00a3ed4
CAPNP_COMMA
brandBindings
+
0
CAPNP_COMMA
2
CAPNP_COMMA
false
}
CAPNP_COMMA
},
{
::
capnp
::
_
::
brandBindingFor
<
InternalRef
>
()
CAPNP_COMMA
::
capnp
::
_
::
brandBindingFor
<
ExternalRef
>
()
CAPNP_COMMA
},
{
{
33554432
CAPNP_COMMA
::
capnp
::
RealmGateway
<
InternalRef
CAPNP_COMMA
ExternalRef
>::
ImportParams
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
33554433
CAPNP_COMMA
::
capnp
::
RealmGateway
<
InternalRef
CAPNP_COMMA
ExternalRef
>::
ExportParams
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
50331648
CAPNP_COMMA
::
capnp
::
Persistent
<
InternalRef
>::
SaveResults
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
{
50331649
CAPNP_COMMA
::
capnp
::
Persistent
<
ExternalRef
>::
SaveResults
::
_capnpPrivate
::
brand
}
CAPNP_COMMA
});
}
// namespace
#endif // CAPNP_INCLUDED_b8630836983feed7_
c++/src/capnp/rpc-prelude.h
View file @
6b35c286
...
...
@@ -26,6 +26,7 @@
#define CAPNP_RPC_PRELUDE_H_
#include "capability.h"
#include "persistent.capnp.h"
namespace
capnp
{
...
...
@@ -65,7 +66,8 @@ public:
class
RpcSystemBase
{
public
:
RpcSystemBase
(
VatNetworkBase
&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
);
RpcSystemBase
(
VatNetworkBase
&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
);
RpcSystemBase
(
VatNetworkBase
&
network
,
SturdyRefRestorerBase
&
restorer
);
RpcSystemBase
(
RpcSystemBase
&&
other
)
noexcept
;
~
RpcSystemBase
()
noexcept
(
false
);
...
...
c++/src/capnp/rpc-twoparty.capnp.h
View file @
6b35c286
...
...
@@ -166,6 +166,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -239,6 +240,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -307,6 +309,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -375,6 +378,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -458,6 +462,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -543,6 +548,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
c++/src/capnp/rpc.c++
View file @
6b35c286
...
...
@@ -265,11 +265,12 @@ private:
class
RpcConnectionState
final
:
public
kj
::
TaskSet
::
ErrorHandler
,
public
kj
::
Refcounted
{
public
:
RpcConnectionState
(
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
,
kj
::
Maybe
<
SturdyRefRestorerBase
&>
restorer
,
kj
::
Own
<
VatNetworkBase
::
Connection
>&&
connectionParam
,
kj
::
Own
<
kj
::
PromiseFulfiller
<
void
>>&&
disconnectFulfiller
)
:
bootstrapInterface
(
kj
::
mv
(
bootstrapInterface
)),
restorer
(
restorer
),
disconnectFulfiller
(
kj
::
mv
(
disconnectFulfiller
)),
tasks
(
*
this
)
{
:
bootstrapInterface
(
kj
::
mv
(
bootstrapInterface
)),
gateway
(
kj
::
mv
(
gateway
)
),
restorer
(
restorer
),
disconnectFulfiller
(
kj
::
mv
(
disconnectFulfiller
)),
tasks
(
*
this
)
{
connection
.
init
<
Connected
>
(
kj
::
mv
(
connectionParam
));
tasks
.
add
(
messageLoop
());
}
...
...
@@ -513,6 +514,7 @@ private:
// OK, now we can define RpcConnectionState's member data.
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
;
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
;
kj
::
Maybe
<
SturdyRefRestorerBase
&>
restorer
;
typedef
kj
::
Own
<
VatNetworkBase
::
Connection
>
Connected
;
...
...
@@ -574,6 +576,28 @@ private:
Request
<
AnyPointer
,
AnyPointer
>
newCall
(
uint64_t
interfaceId
,
uint16_t
methodId
,
kj
::
Maybe
<
MessageSize
>
sizeHint
)
override
{
if
(
interfaceId
==
typeId
<
Persistent
<>>
()
&&
methodId
==
0
)
{
KJ_IF_MAYBE
(
g
,
connectionState
->
gateway
)
{
// Wait, this is a call to Persistent.save() and we need to translate it through our
// gateway.
//
// We pull a neat trick here: We actually end up returning a RequestHook for an import
// request on the gateway cap, but with the "root" of the request actually pointing
// to the "params" field of the real request.
sizeHint
=
sizeHint
.
map
([](
MessageSize
hint
)
{
++
hint
.
capCount
;
hint
.
wordCount
+=
sizeInWords
<
RealmGateway
<>::
ImportParams
>
();
});
auto
request
=
g
->
importRequest
(
sizeHint
);
request
.
setCap
(
Persistent
<>::
Client
(
addRef
()));
return
Request
<
AnyPointer
,
AnyPointer
>
(
request
.
getParams
(),
RequestHook
::
from
(
kj
::
mv
(
request
)));
}
}
if
(
!
connectionState
->
connection
.
is
<
Connected
>
())
{
return
newBrokenRequest
(
kj
::
cp
(
connectionState
->
connection
.
get
<
Disconnected
>
()),
sizeHint
);
}
...
...
@@ -594,6 +618,26 @@ private:
kj
::
Own
<
CallContextHook
>&&
context
)
override
{
// Implement call() by copying params and results messages.
if
(
interfaceId
==
typeId
<
Persistent
<>>
()
&&
methodId
==
0
)
{
KJ_IF_MAYBE
(
g
,
connectionState
->
gateway
)
{
// Wait, this is a call to Persistent.save() and we need to translate it through our
// gateway.
auto
params
=
context
->
getParams
().
getAs
<
Persistent
<>::
SaveParams
>
();
auto
requestSize
=
params
.
totalSize
();
++
requestSize
.
capCount
;
requestSize
.
wordCount
+=
sizeInWords
<
RealmGateway
<>::
ImportParams
>
();
auto
request
=
g
->
importRequest
(
requestSize
);
request
.
setCap
(
Persistent
<>::
Client
(
addRef
()));
request
.
setParams
(
params
);
context
->
allowCancellation
();
context
->
releaseParams
();
return
context
->
directTailCall
(
RequestHook
::
from
(
kj
::
mv
(
request
)));
}
}
auto
params
=
context
->
getParams
();
auto
request
=
newCall
(
interfaceId
,
methodId
,
params
.
targetSize
());
...
...
@@ -2090,10 +2134,10 @@ private:
answer
.
callContext
=
*
context
;
}
auto
promiseAndPipeline
=
capability
->
c
all
(
call
.
getInterfaceId
(),
call
.
getMethodId
(),
context
->
addRef
());
auto
promiseAndPipeline
=
startC
all
(
call
.
getInterfaceId
(),
call
.
getMethodId
(),
kj
::
mv
(
capability
),
context
->
addRef
());
// Things may have changed -- in particular if
c
all() immediately called
// Things may have changed -- in particular if
startC
all() immediately called
// context->directTailCall().
{
...
...
@@ -2137,6 +2181,33 @@ private:
}
}
ClientHook
::
VoidPromiseAndPipeline
startCall
(
uint64_t
interfaceId
,
uint64_t
methodId
,
kj
::
Own
<
ClientHook
>&&
capability
,
kj
::
Own
<
CallContextHook
>&&
context
)
{
if
(
interfaceId
==
typeId
<
Persistent
<>>
()
&&
methodId
==
0
)
{
KJ_IF_MAYBE
(
g
,
gateway
)
{
// Wait, this is a call to Persistent.save() and we need to translate it through our
// gateway.
auto
params
=
context
->
getParams
().
getAs
<
Persistent
<>::
SaveParams
>
();
auto
requestSize
=
params
.
totalSize
();
++
requestSize
.
capCount
;
requestSize
.
wordCount
+=
sizeInWords
<
RealmGateway
<>::
ExportParams
>
();
auto
request
=
g
->
exportRequest
(
requestSize
);
request
.
setCap
(
Persistent
<>::
Client
(
capability
->
addRef
()));
request
.
setParams
(
params
);
context
->
allowCancellation
();
context
->
releaseParams
();
return
context
->
directTailCall
(
RequestHook
::
from
(
kj
::
mv
(
request
)));
}
}
return
capability
->
call
(
interfaceId
,
methodId
,
context
->
addRef
());
}
kj
::
Maybe
<
kj
::
Own
<
ClientHook
>>
getMessageTarget
(
const
rpc
::
MessageTarget
::
Reader
&
target
)
{
switch
(
target
.
which
())
{
case
rpc
:
:
MessageTarget
::
IMPORTED_CAP
:
{
...
...
@@ -2470,8 +2541,10 @@ private:
class
RpcSystemBase
::
Impl
final
:
public
kj
::
TaskSet
::
ErrorHandler
{
public
:
Impl
(
VatNetworkBase
&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
)
:
network
(
network
),
bootstrapInterface
(
kj
::
mv
(
bootstrapInterface
)),
tasks
(
*
this
)
{
Impl
(
VatNetworkBase
&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
)
:
network
(
network
),
bootstrapInterface
(
kj
::
mv
(
bootstrapInterface
)),
gateway
(
kj
::
mv
(
gateway
)),
tasks
(
*
this
)
{
tasks
.
add
(
acceptLoop
());
}
Impl
(
VatNetworkBase
&
network
,
SturdyRefRestorerBase
&
restorer
)
...
...
@@ -2521,6 +2594,7 @@ public:
private
:
VatNetworkBase
&
network
;
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
;
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
;
kj
::
Maybe
<
SturdyRefRestorerBase
&>
restorer
;
kj
::
TaskSet
tasks
;
...
...
@@ -2539,7 +2613,8 @@ private:
connections
.
erase
(
connectionPtr
);
}));
auto
newState
=
kj
::
refcounted
<
RpcConnectionState
>
(
bootstrapInterface
,
restorer
,
kj
::
mv
(
connection
),
kj
::
mv
(
onDisconnect
.
fulfiller
));
bootstrapInterface
,
gateway
,
restorer
,
kj
::
mv
(
connection
),
kj
::
mv
(
onDisconnect
.
fulfiller
));
RpcConnectionState
&
result
=
*
newState
;
connections
.
insert
(
std
::
make_pair
(
connectionPtr
,
kj
::
mv
(
newState
)));
return
result
;
...
...
@@ -2564,8 +2639,9 @@ private:
};
RpcSystemBase
::
RpcSystemBase
(
VatNetworkBase
&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
)
:
impl
(
kj
::
heap
<
Impl
>
(
network
,
kj
::
mv
(
bootstrapInterface
)))
{}
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
)
:
impl
(
kj
::
heap
<
Impl
>
(
network
,
kj
::
mv
(
bootstrapInterface
),
kj
::
mv
(
gateway
)))
{}
RpcSystemBase
::
RpcSystemBase
(
VatNetworkBase
&
network
,
SturdyRefRestorerBase
&
restorer
)
:
impl
(
kj
::
heap
<
Impl
>
(
network
,
restorer
))
{}
RpcSystemBase
::
RpcSystemBase
(
RpcSystemBase
&&
other
)
noexcept
=
default
;
...
...
c++/src/capnp/rpc.capnp.h
View file @
6b35c286
...
...
@@ -537,6 +537,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -617,6 +618,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -733,6 +735,7 @@ public:
inline
SendResultsTo
::
Pipeline
getSendResultsTo
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -826,6 +829,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -960,6 +964,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1038,6 +1043,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1137,6 +1143,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1215,6 +1222,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1300,6 +1308,7 @@ public:
inline
Context
::
Pipeline
getContext
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1398,6 +1407,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1489,6 +1499,7 @@ public:
inline
::
capnp
::
rpc
::
MessageTarget
::
Pipeline
getTarget
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1574,6 +1585,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1665,6 +1677,7 @@ public:
inline
::
capnp
::
rpc
::
MessageTarget
::
Pipeline
getTarget
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1754,6 +1767,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1839,6 +1853,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1961,6 +1976,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2044,6 +2060,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2128,6 +2145,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2208,6 +2226,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2296,6 +2315,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
c++/src/capnp/rpc.h
View file @
6b35c286
...
...
@@ -53,7 +53,8 @@ public:
typename
ThirdPartyCapId
,
typename
JoinResult
>
RpcSystem
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
);
kj
::
Maybe
<
Capability
::
Client
>
bootstrapInterface
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
=
nullptr
);
template
<
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
,
...
...
@@ -99,6 +100,17 @@ RpcSystem<VatId> makeRpcServer(
// See also ez-rpc.h, which has simpler instructions for the common case of a two-party
// client-server RPC connection.
template
<
typename
VatId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
,
typename
InternalRef
,
typename
ExternalRef
>
RpcSystem
<
VatId
>
makeRpcServer
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
Capability
::
Client
bootstrapInterface
,
typename
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
gateway
);
// Make an RPC server for a VatNetwork that resides in a different realm from the application.
// The given RealmGateway is used to translate SturdyRefs between the app's ("internal") format
// and the network's ("external") format.
template
<
typename
VatId
,
typename
LocalSturdyRefObjectId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
>
RpcSystem
<
VatId
>
makeRpcServer
(
...
...
@@ -134,6 +146,16 @@ RpcSystem<VatId> makeRpcClient(
// See also ez-rpc.h, which has simpler instructions for the common case of a two-party
// client-server RPC connection.
template
<
typename
VatId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
,
typename
InternalRef
,
typename
ExternalRef
>
RpcSystem
<
VatId
>
makeRpcClient
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
typename
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
gateway
);
// Make an RPC client for a VatNetwork that resides in a different realm from the application.
// The given RealmGateway is used to translate SturdyRefs between the app's ("internal") format
// and the network's ("external") format.
template
<
typename
SturdyRefObjectId
>
class
SturdyRefRestorer
:
public
_
::
SturdyRefRestorerBase
{
// ** DEPRECATED **
...
...
@@ -310,8 +332,9 @@ template <typename ProvisionId, typename RecipientId,
typename
ThirdPartyCapId
,
typename
JoinResult
>
RpcSystem
<
VatId
>::
RpcSystem
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
kj
::
Maybe
<
Capability
::
Client
>
bootstrap
)
:
_
::
RpcSystemBase
(
network
,
kj
::
mv
(
bootstrap
))
{}
kj
::
Maybe
<
Capability
::
Client
>
bootstrap
,
kj
::
Maybe
<
RealmGateway
<>::
Client
>
gateway
)
:
_
::
RpcSystemBase
(
network
,
kj
::
mv
(
bootstrap
),
kj
::
mv
(
gateway
))
{}
template
<
typename
VatId
>
template
<
typename
ProvisionId
,
typename
RecipientId
,
...
...
@@ -341,6 +364,17 @@ RpcSystem<VatId> makeRpcServer(
return
RpcSystem
<
VatId
>
(
network
,
kj
::
mv
(
bootstrapInterface
));
}
template
<
typename
VatId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
,
typename
InternalRef
,
typename
ExternalRef
>
RpcSystem
<
VatId
>
makeRpcServer
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
Capability
::
Client
bootstrapInterface
,
typename
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
gateway
)
{
return
RpcSystem
<
VatId
>
(
network
,
kj
::
mv
(
bootstrapInterface
),
gateway
.
template
castAs
<
RealmGateway
<>>
());
}
template
<
typename
VatId
,
typename
LocalSturdyRefObjectId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
>
RpcSystem
<
VatId
>
makeRpcServer
(
...
...
@@ -356,6 +390,15 @@ RpcSystem<VatId> makeRpcClient(
return
RpcSystem
<
VatId
>
(
network
,
nullptr
);
}
template
<
typename
VatId
,
typename
ProvisionId
,
typename
RecipientId
,
typename
ThirdPartyCapId
,
typename
JoinResult
,
typename
InternalRef
,
typename
ExternalRef
>
RpcSystem
<
VatId
>
makeRpcClient
(
VatNetwork
<
VatId
,
ProvisionId
,
RecipientId
,
ThirdPartyCapId
,
JoinResult
>&
network
,
typename
RealmGateway
<
InternalRef
,
ExternalRef
>::
Client
gateway
)
{
return
RpcSystem
<
VatId
>
(
network
,
nullptr
,
gateway
.
template
castAs
<
RealmGateway
<>>
());
}
}
// namespace capnp
#endif // CAPNP_RPC_H_
c++/src/capnp/schema.capnp.h
View file @
6b35c286
...
...
@@ -639,6 +639,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -717,6 +718,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -800,6 +802,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -908,6 +911,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -986,6 +990,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1074,6 +1079,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1164,6 +1170,7 @@ public:
inline
::
capnp
::
schema
::
Value
::
Pipeline
getValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1303,6 +1310,7 @@ public:
inline
::
capnp
::
schema
::
Type
::
Pipeline
getType
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1423,6 +1431,7 @@ public:
inline
Ordinal
::
Pipeline
getOrdinal
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1523,6 +1532,7 @@ public:
inline
::
capnp
::
schema
::
Value
::
Pipeline
getDefaultValue
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1596,6 +1606,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1680,6 +1691,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1773,6 +1785,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1857,6 +1870,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -1992,6 +2006,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getResultBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2195,6 +2210,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2274,6 +2290,7 @@ public:
inline
::
capnp
::
schema
::
Type
::
Pipeline
getElementType
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2358,6 +2375,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2442,6 +2460,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2526,6 +2545,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2617,6 +2637,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2695,6 +2716,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2768,6 +2790,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2846,6 +2869,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -2940,6 +2964,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3029,6 +3054,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3248,6 +3274,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3343,6 +3370,7 @@ public:
inline
::
capnp
::
schema
::
Brand
::
Pipeline
getBrand
();
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3431,6 +3459,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3524,6 +3553,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
@@ -3607,6 +3637,7 @@ public:
private
:
::
capnp
::
AnyPointer
::
Pipeline
_typeless
;
friend
class
::
capnp
::
PipelineHook
;
template
<
typename
,
::
capnp
::
Kind
>
friend
struct
::
capnp
::
ToDynamic_
;
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment