summaryrefslogtreecommitdiff
path: root/docs/data/core/tmpl_reduce.json
blob: 495738d9eb2227ab99d26a435b7a8b18e7f7ef6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
	"format": 1,
	"id": "saw-tmpl_reduce",
	"kind": "struct",
	"name": "tmpl_reduce",
	"namespace": "saw",
	"module": "core",
	"header": "modules/core/c++/reduce_templates.hpp",
	"brief_description": "Removes duplicate types from a group.",
	"detailed_description": [
		[
			"Turns a",
			{"name": "tmpl_group", "id": "saw-tmpl_group"},
			"into one where every type appears once. The remote layer needs it because an interface mentions a schema once per function, while there must be exactly one data server per schema."
		],
		[
			"It is also what makes the tuple lookups work: fetching an element by type requires that type to occur exactly once."
		]
	],
	"templates": [
		{"name": "T", "kind": "type", "brief_description": "The group to reduce."}
	],
	"aliases": {
		"saw-tmpl_reduce-type": {
			"id": "saw-tmpl_reduce-type",
			"name": "type",
			"type": ["typename impl::tmpl_group_reduce< T >::reduced_type"],
			"brief_description": "The group without duplicates."
		}
	}
}