// Code generated by applyconfiguration-gen. DO NOT EDIT.

package v1

// DaskClusterSpecApplyConfiguration represents an declarative configuration of the DaskClusterSpec type for use
// with apply.
type DaskClusterSpecApplyConfiguration struct {
	Worker    *WorkerSpecApplyConfiguration    `json:"worker,omitempty"`
	Scheduler *SchedulerSpecApplyConfiguration `json:"scheduler,omitempty"`
}

// DaskClusterSpecApplyConfiguration constructs an declarative configuration of the DaskClusterSpec type for use with
// apply.
func DaskClusterSpec() *DaskClusterSpecApplyConfiguration {
	return &DaskClusterSpecApplyConfiguration{}
}

// WithWorker sets the Worker field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the Worker field is set to the value of the last call.
func (b *DaskClusterSpecApplyConfiguration) WithWorker(value *WorkerSpecApplyConfiguration) *DaskClusterSpecApplyConfiguration {
	b.Worker = value
	return b
}

// WithScheduler sets the Scheduler field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the Scheduler field is set to the value of the last call.
func (b *DaskClusterSpecApplyConfiguration) WithScheduler(value *SchedulerSpecApplyConfiguration) *DaskClusterSpecApplyConfiguration {
	b.Scheduler = value
	return b
}
