ESPHome 2025.12.6
Loading...
Searching...
No Matches
esphome::text_sensor::StatelessLambdaFilter Class Reference

Optimized lambda filter for stateless lambdas (no capture). More...

#include <filter.h>

Inheritance diagram for esphome::text_sensor::StatelessLambdaFilter:
esphome::text_sensor::Filter

Public Member Functions

 StatelessLambdaFilter (optional< std::string >(*lambda_filter)(std::string))
 
optional< std::string > new_value (std::string value) override
 
- Public Member Functions inherited from esphome::text_sensor::Filter
virtual void initialize (TextSensor *parent, Filter *next)
 Initialize this filter, please note this can be called more than once.
 
void input (const std::string &value)
 
void output (const std::string &value)
 

Protected Attributes

optional< std::string >(* lambda_filter_ )(std::string)
 
- Protected Attributes inherited from esphome::text_sensor::Filter
friend TextSensor
 
Filternext_ {nullptr}
 
TextSensorparent_ {nullptr}
 

Detailed Description

Optimized lambda filter for stateless lambdas (no capture).

Uses function pointer instead of std::function to reduce memory overhead. Memory: 4 bytes (function pointer on 32-bit) vs 32 bytes (std::function).

Definition at line 70 of file filter.h.

Constructor & Destructor Documentation

◆ StatelessLambdaFilter()

esphome::text_sensor::StatelessLambdaFilter::StatelessLambdaFilter ( optional< std::string >(* lambda_filter )(std::string))
inlineexplicit

Definition at line 72 of file filter.h.

Member Function Documentation

◆ new_value()

optional< std::string > esphome::text_sensor::StatelessLambdaFilter::new_value ( std::string value)
inlineoverridevirtual

Implements esphome::text_sensor::Filter.

Definition at line 74 of file filter.h.

Field Documentation

◆ lambda_filter_

optional< std::string >(* esphome::text_sensor::StatelessLambdaFilter::lambda_filter_) (std::string)
protected

Definition at line 74 of file filter.h.


The documentation for this class was generated from the following file: