2#include <bugui/concepts/device.hpp>
3#include <bugui/concepts/color.hpp>
4#include <bugui/concepts/protocol.hpp>
11template <
typename Device,
typename Component>
20template <
typename Device,
typename Component>
24 using type =
class Device::color;
29template <
typename Device, has_color Component>
30struct color_t<Device, Component> final
32 using type =
class Component::color;
39template <
typename Device,
typename Component>
47template <
typename Device, has_protocol Component>
50 using type = Component;
55template <
typename Device,
typename Component>
61template <has_clear Device,
typename Component>
65 using type =
class Device::clear;
70template <
typename Device, has_clear Component>
71struct clear_t<Device, Component> final
73 using type =
class Component::clear;
79template <
typename Device,
typename Component>
80 requires (has_init<Device> || !has_init<Component>)
83 using type =
class Component::init;
89template <
typename Device,
typename Component>
93 using type =
class Device::init;
98template <
typename Device,
typename Component>
Primary template. To be specialized.
Definition component.hpp:56
Primary template for a Device and a Component that do not feature a color nested type.
Definition component.hpp:13
Primary template. To be specialized.
Definition component.hpp:99
Provides a type alias for the init nested type of the Component.
Definition component.hpp:82
Primary template providing a type alias for the Device only if the Component type does not feature a ...
Definition component.hpp:41