// Code generated by generate/interfaces; DO NOT EDIT.

package disgord

func executeInternalClientUpdater(client *Client, x interface{}) {
}

func executeInternalUpdater(x interface{}) {
	update := func(u internalUpdater) {
		u.updateInternals()
	}
	switch t := x.(type) {
	case *Attachment:
		update(t)
	case []*Attachment:
		for i := range t {
			update(t[i])
		}
	case *[]*Attachment:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *MessageCreate:
		update(t)
	case []*MessageCreate:
		for i := range t {
			update(t[i])
		}
	case *[]*MessageCreate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *MessageUpdate:
		update(t)
	case []*MessageUpdate:
		for i := range t {
			update(t[i])
		}
	case *[]*MessageUpdate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *InteractionCreate:
		update(t)
	case []*InteractionCreate:
		for i := range t {
			update(t[i])
		}
	case *[]*InteractionCreate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildEmojisUpdate:
		update(t)
	case []*GuildEmojisUpdate:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildEmojisUpdate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildCreate:
		update(t)
	case []*GuildCreate:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildCreate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildUpdate:
		update(t)
	case []*GuildUpdate:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildUpdate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildMemberAdd:
		update(t)
	case []*GuildMemberAdd:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildMemberAdd:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildMembersChunk:
		update(t)
	case []*GuildMembersChunk:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildMembersChunk:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildRoleCreate:
		update(t)
	case []*GuildRoleCreate:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildRoleCreate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *GuildRoleUpdate:
		update(t)
	case []*GuildRoleUpdate:
		for i := range t {
			update(t[i])
		}
	case *[]*GuildRoleUpdate:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *Guild:
		update(t)
	case []*Guild:
		for i := range t {
			update(t[i])
		}
	case *[]*Guild:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *Member:
		update(t)
	case []*Member:
		for i := range t {
			update(t[i])
		}
	case *[]*Member:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	case *Message:
		update(t)
	case []*Message:
		for i := range t {
			update(t[i])
		}
	case *[]*Message:
		slice := *t
		for i := range slice {
			update(slice[i])
		}
	}
}
