// automatically generated by stateify.

package device

import (
	"gvisor.dev/gvisor/pkg/state"
)

func (x *Registry) StateTypeName() string {
	return "pkg/sentry/device.Registry"
}

func (x *Registry) StateFields() []string {
	return []string{
		"lastAnonDeviceMinor",
		"devices",
	}
}

func (x *Registry) beforeSave() {}

func (x *Registry) StateSave(m state.Sink) {
	x.beforeSave()
	m.Save(0, &x.lastAnonDeviceMinor)
	m.Save(1, &x.devices)
}

func (x *Registry) afterLoad() {}

func (x *Registry) StateLoad(m state.Source) {
	m.Load(0, &x.lastAnonDeviceMinor)
	m.Load(1, &x.devices)
}

func (x *ID) StateTypeName() string {
	return "pkg/sentry/device.ID"
}

func (x *ID) StateFields() []string {
	return []string{
		"Major",
		"Minor",
	}
}

func (x *ID) beforeSave() {}

func (x *ID) StateSave(m state.Sink) {
	x.beforeSave()
	m.Save(0, &x.Major)
	m.Save(1, &x.Minor)
}

func (x *ID) afterLoad() {}

func (x *ID) StateLoad(m state.Source) {
	m.Load(0, &x.Major)
	m.Load(1, &x.Minor)
}

func (x *Device) StateTypeName() string {
	return "pkg/sentry/device.Device"
}

func (x *Device) StateFields() []string {
	return []string{
		"ID",
		"last",
	}
}

func (x *Device) beforeSave() {}

func (x *Device) StateSave(m state.Sink) {
	x.beforeSave()
	m.Save(0, &x.ID)
	m.Save(1, &x.last)
}

func (x *Device) afterLoad() {}

func (x *Device) StateLoad(m state.Source) {
	m.Load(0, &x.ID)
	m.Load(1, &x.last)
}

func init() {
	state.Register((*Registry)(nil))
	state.Register((*ID)(nil))
	state.Register((*Device)(nil))
}