func (c *RetryConfig) Merge(o *RetryConfig) *RetryConfig {
	if c == nil {
		if o == nil {
			return nil
		}
		return o.Copy()
	}

	if o == nil {
		return c.Copy()
	}

	r := c.Copy()

	if o.Attempts != nil {
		r.Attempts = o.Attempts
	}

	if o.Backoff != nil {
		r.Backoff = o.Backoff
	}

	if o.MaxBackoff != nil {
		r.MaxBackoff = o.MaxBackoff
	}

	if o.Enabled != nil {
		r.Enabled = o.Enabled
	}

	return r
}
func (c *RetryConfig) Merge(o *RetryConfig) *RetryConfig {
	if c == nil {
		if o == nil {
			return nil
		}
		return o.Copy()
	}

	if o == nil {
		return c.Copy()
	}

	r := c.Copy()

	if o.Attempts != nil {
		r.Attempts = o.Attempts
	}

	if o.Backoff != nil {
		r.Backoff = o.Backoff
	}

	if o.MaxBackoff != nil {
		r.MaxBackoff = o.MaxBackoff
	}

	if o.Enabled != nil {
		r.Enabled = o.Enabled
	}

	return r
}
func ( c * RetryConfig ) Merge ( o * RetryConfig ) * RetryConfig { if c == nil { if o == nil { return nil } return o . Copy ( ) } if o == nil { return c . Copy ( ) } r := c . Copy ( ) if o . Attempts != nil { r . Attempts = o . Attempts } if o . Backoff != nil { r . Backoff = o . Backoff } if o . MaxBackoff != nil { r . MaxBackoff = o . MaxBackoff } if o . Enabled != nil { r . Enabled = o . Enabled } return r }
// Merge combines all values in this configuration with the values in the other
// configuration, with values in the other configuration taking precedence.
// Maps and slices are merged, most other values are overwritten. Complex
// structs define their own merge functionality.
Merge combines all values in this configuration with the values in the other configuration with values in the other configuration taking precedence . Maps and slices are merged most other values are overwritten . Complex structs define their own merge functionality .