[template] Define the TemplateNumber constructor out of line

This commit is contained in:
J. Nick Koston
2026-09-12 06:09:48 -05:00
parent 301c4d6db0
commit cb121e7596
2 changed files with 4 additions and 1 deletions
@@ -3,6 +3,8 @@
namespace esphome::template_ {
TemplateNumber::TemplateNumber() {}
static const char *const TAG = "template.number";
void TemplateNumber::setup() {
@@ -11,7 +11,8 @@ namespace esphome::template_ {
class TemplateNumber final : public number::Number, public PollingComponent {
public:
// User provided, not "= default": `new(p) TemplateNumber()` would zero-fill .bss that is already zero.
TemplateNumber() {}
// Defined out of line so the member constructors are not inlined into every construction site.
TemplateNumber();
template<typename F> void set_template(F &&f) { this->f_.set(std::forward<F>(f)); }
void setup() override;