{ "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." } } }