// Code generated by go-swagger; DO NOT EDIT.

package types

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	strfmt "github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// IPAMConfig represents IPAM configurations
// swagger:model IPAMConfig
type IPAMConfig struct {

	// aux address in sub-network
	AuxAddress map[string]string `json:"AuxAddress,omitempty"`

	// gateway for sub-network
	Gateway string `json:"Gateway,omitempty"`

	// sub ip range in sub-network
	IPRange string `json:"IPRange,omitempty"`

	// subnet address for network
	Subnet string `json:"Subnet,omitempty"`
}

// Validate validates this IP a m config
func (m *IPAMConfig) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *IPAMConfig) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *IPAMConfig) UnmarshalBinary(b []byte) error {
	var res IPAMConfig
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
