12443 lines
396 KiB
Go
12443 lines
396 KiB
Go
package vehicle
|
|
|
|
// Code generated by github.com/evcc-io/evcc/cmd/tools/decorate.go. DO NOT EDIT.
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/evcc-io/evcc/api"
|
|
)
|
|
|
|
func decorateVehicle(base api.Vehicle, socLimiter func() (int64, error), chargeState func() (api.ChargeStatus, error), vehicleRange func() (int64, error), vehicleOdometer func() (float64, error), vehicleClimater func() (bool, error), currentController func(int64) error, currentGetter func() (float64, error), vehicleFinishTimer func() (time.Time, error), resurrector func() error, chargeController func(bool) error) api.Vehicle {
|
|
switch {
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return base
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeState == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController == nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector == nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer == nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter == nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater == nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer == nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange == nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter == nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
|
|
case chargeController != nil && chargeState != nil && currentController != nil && currentGetter != nil && resurrector != nil && socLimiter != nil && vehicleClimater != nil && vehicleFinishTimer != nil && vehicleOdometer != nil && vehicleRange != nil:
|
|
return &struct {
|
|
api.Vehicle
|
|
api.ChargeController
|
|
api.ChargeState
|
|
api.CurrentController
|
|
api.CurrentGetter
|
|
api.Resurrector
|
|
api.SocLimiter
|
|
api.VehicleClimater
|
|
api.VehicleFinishTimer
|
|
api.VehicleOdometer
|
|
api.VehicleRange
|
|
}{
|
|
Vehicle: base,
|
|
ChargeController: &decorateVehicleChargeControllerImpl{
|
|
chargeController: chargeController,
|
|
},
|
|
ChargeState: &decorateVehicleChargeStateImpl{
|
|
chargeState: chargeState,
|
|
},
|
|
CurrentController: &decorateVehicleCurrentControllerImpl{
|
|
currentController: currentController,
|
|
},
|
|
CurrentGetter: &decorateVehicleCurrentGetterImpl{
|
|
currentGetter: currentGetter,
|
|
},
|
|
Resurrector: &decorateVehicleResurrectorImpl{
|
|
resurrector: resurrector,
|
|
},
|
|
SocLimiter: &decorateVehicleSocLimiterImpl{
|
|
socLimiter: socLimiter,
|
|
},
|
|
VehicleClimater: &decorateVehicleVehicleClimaterImpl{
|
|
vehicleClimater: vehicleClimater,
|
|
},
|
|
VehicleFinishTimer: &decorateVehicleVehicleFinishTimerImpl{
|
|
vehicleFinishTimer: vehicleFinishTimer,
|
|
},
|
|
VehicleOdometer: &decorateVehicleVehicleOdometerImpl{
|
|
vehicleOdometer: vehicleOdometer,
|
|
},
|
|
VehicleRange: &decorateVehicleVehicleRangeImpl{
|
|
vehicleRange: vehicleRange,
|
|
},
|
|
}
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
type decorateVehicleChargeControllerImpl struct {
|
|
chargeController func(bool) error
|
|
}
|
|
|
|
func (impl *decorateVehicleChargeControllerImpl) ChargeEnable(p0 bool) error {
|
|
return impl.chargeController(p0)
|
|
}
|
|
|
|
type decorateVehicleChargeStateImpl struct {
|
|
chargeState func() (api.ChargeStatus, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleChargeStateImpl) Status() (api.ChargeStatus, error) {
|
|
return impl.chargeState()
|
|
}
|
|
|
|
type decorateVehicleCurrentControllerImpl struct {
|
|
currentController func(int64) error
|
|
}
|
|
|
|
func (impl *decorateVehicleCurrentControllerImpl) MaxCurrent(p0 int64) error {
|
|
return impl.currentController(p0)
|
|
}
|
|
|
|
type decorateVehicleCurrentGetterImpl struct {
|
|
currentGetter func() (float64, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleCurrentGetterImpl) GetMaxCurrent() (float64, error) {
|
|
return impl.currentGetter()
|
|
}
|
|
|
|
type decorateVehicleResurrectorImpl struct {
|
|
resurrector func() error
|
|
}
|
|
|
|
func (impl *decorateVehicleResurrectorImpl) WakeUp() error {
|
|
return impl.resurrector()
|
|
}
|
|
|
|
type decorateVehicleSocLimiterImpl struct {
|
|
socLimiter func() (int64, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleSocLimiterImpl) GetLimitSoc() (int64, error) {
|
|
return impl.socLimiter()
|
|
}
|
|
|
|
type decorateVehicleVehicleClimaterImpl struct {
|
|
vehicleClimater func() (bool, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleVehicleClimaterImpl) Climater() (bool, error) {
|
|
return impl.vehicleClimater()
|
|
}
|
|
|
|
type decorateVehicleVehicleFinishTimerImpl struct {
|
|
vehicleFinishTimer func() (time.Time, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleVehicleFinishTimerImpl) FinishTime() (time.Time, error) {
|
|
return impl.vehicleFinishTimer()
|
|
}
|
|
|
|
type decorateVehicleVehicleOdometerImpl struct {
|
|
vehicleOdometer func() (float64, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleVehicleOdometerImpl) Odometer() (float64, error) {
|
|
return impl.vehicleOdometer()
|
|
}
|
|
|
|
type decorateVehicleVehicleRangeImpl struct {
|
|
vehicleRange func() (int64, error)
|
|
}
|
|
|
|
func (impl *decorateVehicleVehicleRangeImpl) Range() (int64, error) {
|
|
return impl.vehicleRange()
|
|
}
|