#ifndef BWIDGETS_CONCEPTS_HPP_ #define BWIDGETS_CONCEPTS_HPP_ #include #include #include namespace bwidgets { template concept CanToString = requires(T value) { std::to_string(value); }; template concept FloatingPoint = std::is_floating_point_v; template concept Numeric = std::is_arithmetic_v; template concept Printable = requires(T value) { std::declval() << value; }; } #endif