package charger // Code generated by github.com/evcc-io/evcc/cmd/tools/decorate.go. DO NOT EDIT. import ( "github.com/evcc-io/evcc/api" ) func decorateSwitchSocket(base *SwitchSocket, meterEnergy func() (float64, error)) api.Charger { switch { case meterEnergy == nil: return base case meterEnergy != nil: return &struct { *SwitchSocket api.MeterEnergy }{ SwitchSocket: base, MeterEnergy: &decorateSwitchSocketMeterEnergyImpl{ meterEnergy: meterEnergy, }, } } return nil } type decorateSwitchSocketMeterEnergyImpl struct { meterEnergy func() (float64, error) } func (impl *decorateSwitchSocketMeterEnergyImpl) TotalEnergy() (float64, error) { return impl.meterEnergy() }