1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
{
"format": 1,
"id": "saw-i_rpc_server",
"kind": "class",
"name": "i_rpc_server",
"namespace": "saw",
"module": "remote",
"header": "modules/remote/c++/remote.hpp",
"brief_description": "Registry handle for an rpc server of unknown interface.",
"detailed_description": [
[
"The counterpart of",
{"name": "i_data_server", "id": "saw-i_data_server"},
"for the rpc layer. It exists so a remote can keep servers of different interfaces in one map and hand back the right one when a client requests it."
],
[
"Here the class id is the interface hash together with the encoding hash, so connecting with a different interface than the one being served fails instead of reinterpreting the server."
]
],
"templates": [
{
"name": "Remote",
"kind": "type",
"brief_description": "Tag type of the backend."
}
],
"functions": {
"saw-i_rpc_server-get_class_id": {
"id": "saw-i_rpc_server-get_class_id",
"name": "get_class_id",
"type": ["std::pair< uint32_t, uint32_t >"],
"const": true,
"virtual": true,
"brief_description": "Interface hash and encoding hash of the server behind this handle."
},
"saw-i_rpc_server-cast_to": {
"id": "saw-i_rpc_server-cast_to",
"name": "cast_to",
"type": ["error_or< ptr< To > >"],
"brief_description": "Recovers the concrete server.",
"detailed_description": [
["Fails with invalid_state if the class ids don't match."]
],
"templates": [
{
"name": "To",
"kind": "type",
"brief_description": "The concrete rpc server expected behind this handle."
}
]
}
}
}
|