evcc-io/meter/homeassistant_decorators.go

7233 lines
238 KiB
Go

package meter
// Code generated by github.com/evcc-io/evcc/cmd/tools/decorate.go. DO NOT EDIT.
import (
"github.com/evcc-io/evcc/api"
)
func decorateHomeAssistant(base *HomeAssistant, meterEnergy func() (float64, error), phaseCurrents func() (float64, float64, float64, error), phaseVoltages func() (float64, float64, float64, error), battery func() (float64, error), batteryCapacity func() float64, batterySocLimiter func() (float64, float64), batteryPowerLimiter func() (float64, float64), batteryController func(api.BatteryMode) error, maxACPowerGetter func() float64) api.Meter {
switch {
case battery == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return base
case battery == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MeterEnergy
}{
HomeAssistant: base,
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.PhaseCurrents
}{
HomeAssistant: base,
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.PhaseVoltages
}{
HomeAssistant: base,
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter == nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController == nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter == nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter == nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity == nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages == nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents == nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy == nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
case battery != nil && batteryCapacity != nil && batteryController != nil && batteryPowerLimiter != nil && batterySocLimiter != nil && maxACPowerGetter != nil && meterEnergy != nil && phaseCurrents != nil && phaseVoltages != nil:
return &struct {
*HomeAssistant
api.Battery
api.BatteryCapacity
api.BatteryController
api.BatteryPowerLimiter
api.BatterySocLimiter
api.MaxACPowerGetter
api.MeterEnergy
api.PhaseCurrents
api.PhaseVoltages
}{
HomeAssistant: base,
Battery: &decorateHomeAssistantBatteryImpl{
battery: battery,
},
BatteryCapacity: &decorateHomeAssistantBatteryCapacityImpl{
batteryCapacity: batteryCapacity,
},
BatteryController: &decorateHomeAssistantBatteryControllerImpl{
batteryController: batteryController,
},
BatteryPowerLimiter: &decorateHomeAssistantBatteryPowerLimiterImpl{
batteryPowerLimiter: batteryPowerLimiter,
},
BatterySocLimiter: &decorateHomeAssistantBatterySocLimiterImpl{
batterySocLimiter: batterySocLimiter,
},
MaxACPowerGetter: &decorateHomeAssistantMaxACPowerGetterImpl{
maxACPowerGetter: maxACPowerGetter,
},
MeterEnergy: &decorateHomeAssistantMeterEnergyImpl{
meterEnergy: meterEnergy,
},
PhaseCurrents: &decorateHomeAssistantPhaseCurrentsImpl{
phaseCurrents: phaseCurrents,
},
PhaseVoltages: &decorateHomeAssistantPhaseVoltagesImpl{
phaseVoltages: phaseVoltages,
},
}
}
return nil
}
type decorateHomeAssistantBatteryImpl struct {
battery func() (float64, error)
}
func (impl *decorateHomeAssistantBatteryImpl) Soc() (float64, error) {
return impl.battery()
}
type decorateHomeAssistantBatteryCapacityImpl struct {
batteryCapacity func() float64
}
func (impl *decorateHomeAssistantBatteryCapacityImpl) Capacity() float64 {
return impl.batteryCapacity()
}
type decorateHomeAssistantBatteryControllerImpl struct {
batteryController func(api.BatteryMode) error
}
func (impl *decorateHomeAssistantBatteryControllerImpl) SetBatteryMode(p0 api.BatteryMode) error {
return impl.batteryController(p0)
}
type decorateHomeAssistantBatteryPowerLimiterImpl struct {
batteryPowerLimiter func() (float64, float64)
}
func (impl *decorateHomeAssistantBatteryPowerLimiterImpl) GetPowerLimits() (float64, float64) {
return impl.batteryPowerLimiter()
}
type decorateHomeAssistantBatterySocLimiterImpl struct {
batterySocLimiter func() (float64, float64)
}
func (impl *decorateHomeAssistantBatterySocLimiterImpl) GetSocLimits() (float64, float64) {
return impl.batterySocLimiter()
}
type decorateHomeAssistantMaxACPowerGetterImpl struct {
maxACPowerGetter func() float64
}
func (impl *decorateHomeAssistantMaxACPowerGetterImpl) MaxACPower() float64 {
return impl.maxACPowerGetter()
}
type decorateHomeAssistantMeterEnergyImpl struct {
meterEnergy func() (float64, error)
}
func (impl *decorateHomeAssistantMeterEnergyImpl) TotalEnergy() (float64, error) {
return impl.meterEnergy()
}
type decorateHomeAssistantPhaseCurrentsImpl struct {
phaseCurrents func() (float64, float64, float64, error)
}
func (impl *decorateHomeAssistantPhaseCurrentsImpl) Currents() (float64, float64, float64, error) {
return impl.phaseCurrents()
}
type decorateHomeAssistantPhaseVoltagesImpl struct {
phaseVoltages func() (float64, float64, float64, error)
}
func (impl *decorateHomeAssistantPhaseVoltagesImpl) Voltages() (float64, float64, float64, error) {
return impl.phaseVoltages()
}