// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: pb/artistinfoArtshow.proto

package artistinfoArtshow

import (
	"bytes"
	"errors"
	"fmt"
	"net"
	"net/mail"
	"net/url"
	"regexp"
	"sort"
	"strings"
	"time"
	"unicode/utf8"

	"google.golang.org/protobuf/types/known/anypb"
)

// ensure the imports are used
var (
	_ = bytes.MinRead
	_ = errors.New("")
	_ = fmt.Print
	_ = utf8.UTFMax
	_ = (*regexp.Regexp)(nil)
	_ = (*strings.Reader)(nil)
	_ = net.IPv4len
	_ = time.Duration(0)
	_ = (*url.URL)(nil)
	_ = (*mail.Address)(nil)
	_ = anypb.Any{}
	_ = sort.Sort
)

// Validate checks the field values on ArtistListRequest with the rules defined
// in the proto definition for this message. If any rules are violated, the
// first error encountered is returned, or nil if there are no violations.
func (m *ArtistListRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on ArtistListRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// ArtistListRequestMultiError, or nil if none found.
func (m *ArtistListRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *ArtistListRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Page

	// no validation rules for PageSize

	// no validation rules for ArtistName

	if len(errors) > 0 {
		return ArtistListRequestMultiError(errors)
	}

	return nil
}

// ArtistListRequestMultiError is an error wrapping multiple validation errors
// returned by ArtistListRequest.ValidateAll() if the designated constraints
// aren't met.
type ArtistListRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m ArtistListRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m ArtistListRequestMultiError) AllErrors() []error { return m }

// ArtistListRequestValidationError is the validation error returned by
// ArtistListRequest.Validate if the designated constraints aren't met.
type ArtistListRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e ArtistListRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e ArtistListRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e ArtistListRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e ArtistListRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e ArtistListRequestValidationError) ErrorName() string {
	return "ArtistListRequestValidationError"
}

// Error satisfies the builtin error interface
func (e ArtistListRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sArtistListRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = ArtistListRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = ArtistListRequestValidationError{}

// Validate checks the field values on VideoPagination with the rules defined
// in the proto definition for this message. If any rules are violated, the
// first error encountered is returned, or nil if there are no violations.
func (m *VideoPagination) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on VideoPagination with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// VideoPaginationMultiError, or nil if none found.
func (m *VideoPagination) ValidateAll() error {
	return m.validate(true)
}

func (m *VideoPagination) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Page

	// no validation rules for PageSize

	// no validation rules for Total

	if len(errors) > 0 {
		return VideoPaginationMultiError(errors)
	}

	return nil
}

// VideoPaginationMultiError is an error wrapping multiple validation errors
// returned by VideoPagination.ValidateAll() if the designated constraints
// aren't met.
type VideoPaginationMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m VideoPaginationMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m VideoPaginationMultiError) AllErrors() []error { return m }

// VideoPaginationValidationError is the validation error returned by
// VideoPagination.Validate if the designated constraints aren't met.
type VideoPaginationValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e VideoPaginationValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e VideoPaginationValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e VideoPaginationValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e VideoPaginationValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e VideoPaginationValidationError) ErrorName() string { return "VideoPaginationValidationError" }

// Error satisfies the builtin error interface
func (e VideoPaginationValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sVideoPagination.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = VideoPaginationValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = VideoPaginationValidationError{}

// Validate checks the field values on GetArtshowVideoListRequst with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtshowVideoListRequst) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtshowVideoListRequst with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtshowVideoListRequstMultiError, or nil if none found.
func (m *GetArtshowVideoListRequst) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtshowVideoListRequst) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Page

	// no validation rules for PageSize

	// no validation rules for ArtistName

	// no validation rules for ArtistUid

	// no validation rules for LockTime

	// no validation rules for AuditStatus

	// no validation rules for Status

	if len(errors) > 0 {
		return GetArtshowVideoListRequstMultiError(errors)
	}

	return nil
}

// GetArtshowVideoListRequstMultiError is an error wrapping multiple validation
// errors returned by GetArtshowVideoListRequst.ValidateAll() if the
// designated constraints aren't met.
type GetArtshowVideoListRequstMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtshowVideoListRequstMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtshowVideoListRequstMultiError) AllErrors() []error { return m }

// GetArtshowVideoListRequstValidationError is the validation error returned by
// GetArtshowVideoListRequst.Validate if the designated constraints aren't met.
type GetArtshowVideoListRequstValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtshowVideoListRequstValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtshowVideoListRequstValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtshowVideoListRequstValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtshowVideoListRequstValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtshowVideoListRequstValidationError) ErrorName() string {
	return "GetArtshowVideoListRequstValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtshowVideoListRequstValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtshowVideoListRequst.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtshowVideoListRequstValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtshowVideoListRequstValidationError{}

// Validate checks the field values on ArtshowVideoInfo with the rules defined
// in the proto definition for this message. If any rules are violated, the
// first error encountered is returned, or nil if there are no violations.
func (m *ArtshowVideoInfo) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on ArtshowVideoInfo with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// ArtshowVideoInfoMultiError, or nil if none found.
func (m *ArtshowVideoInfo) ValidateAll() error {
	return m.validate(true)
}

func (m *ArtshowVideoInfo) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	// no validation rules for ArtistUid

	// no validation rules for LockTime

	// no validation rules for VideoUrl

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	// no validation rules for CreatedAt

	// no validation rules for UpdatedAt

	// no validation rules for DeletedAt

	// no validation rules for ArtistName

	// no validation rules for Status

	// no validation rules for Editable

	if len(errors) > 0 {
		return ArtshowVideoInfoMultiError(errors)
	}

	return nil
}

// ArtshowVideoInfoMultiError is an error wrapping multiple validation errors
// returned by ArtshowVideoInfo.ValidateAll() if the designated constraints
// aren't met.
type ArtshowVideoInfoMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m ArtshowVideoInfoMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m ArtshowVideoInfoMultiError) AllErrors() []error { return m }

// ArtshowVideoInfoValidationError is the validation error returned by
// ArtshowVideoInfo.Validate if the designated constraints aren't met.
type ArtshowVideoInfoValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e ArtshowVideoInfoValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e ArtshowVideoInfoValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e ArtshowVideoInfoValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e ArtshowVideoInfoValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e ArtshowVideoInfoValidationError) ErrorName() string { return "ArtshowVideoInfoValidationError" }

// Error satisfies the builtin error interface
func (e ArtshowVideoInfoValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sArtshowVideoInfo.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = ArtshowVideoInfoValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = ArtshowVideoInfoValidationError{}

// Validate checks the field values on GetArtshowVideoListResponse with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtshowVideoListResponse) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtshowVideoListResponse with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtshowVideoListResponseMultiError, or nil if none found.
func (m *GetArtshowVideoListResponse) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtshowVideoListResponse) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	for idx, item := range m.GetData() {
		_, _ = idx, item

		if all {
			switch v := interface{}(item).(type) {
			case interface{ ValidateAll() error }:
				if err := v.ValidateAll(); err != nil {
					errors = append(errors, GetArtshowVideoListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			case interface{ Validate() error }:
				if err := v.Validate(); err != nil {
					errors = append(errors, GetArtshowVideoListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			}
		} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
			if err := v.Validate(); err != nil {
				return GetArtshowVideoListResponseValidationError{
					field:  fmt.Sprintf("Data[%v]", idx),
					reason: "embedded message failed validation",
					cause:  err,
				}
			}
		}

	}

	if all {
		switch v := interface{}(m.GetPage()).(type) {
		case interface{ ValidateAll() error }:
			if err := v.ValidateAll(); err != nil {
				errors = append(errors, GetArtshowVideoListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		case interface{ Validate() error }:
			if err := v.Validate(); err != nil {
				errors = append(errors, GetArtshowVideoListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		}
	} else if v, ok := interface{}(m.GetPage()).(interface{ Validate() error }); ok {
		if err := v.Validate(); err != nil {
			return GetArtshowVideoListResponseValidationError{
				field:  "Page",
				reason: "embedded message failed validation",
				cause:  err,
			}
		}
	}

	if len(errors) > 0 {
		return GetArtshowVideoListResponseMultiError(errors)
	}

	return nil
}

// GetArtshowVideoListResponseMultiError is an error wrapping multiple
// validation errors returned by GetArtshowVideoListResponse.ValidateAll() if
// the designated constraints aren't met.
type GetArtshowVideoListResponseMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtshowVideoListResponseMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtshowVideoListResponseMultiError) AllErrors() []error { return m }

// GetArtshowVideoListResponseValidationError is the validation error returned
// by GetArtshowVideoListResponse.Validate if the designated constraints
// aren't met.
type GetArtshowVideoListResponseValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtshowVideoListResponseValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtshowVideoListResponseValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtshowVideoListResponseValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtshowVideoListResponseValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtshowVideoListResponseValidationError) ErrorName() string {
	return "GetArtshowVideoListResponseValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtshowVideoListResponseValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtshowVideoListResponse.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtshowVideoListResponseValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtshowVideoListResponseValidationError{}

// Validate checks the field values on AuditArtshowVideoRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *AuditArtshowVideoRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on AuditArtshowVideoRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// AuditArtshowVideoRequestMultiError, or nil if none found.
func (m *AuditArtshowVideoRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *AuditArtshowVideoRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	if len(errors) > 0 {
		return AuditArtshowVideoRequestMultiError(errors)
	}

	return nil
}

// AuditArtshowVideoRequestMultiError is an error wrapping multiple validation
// errors returned by AuditArtshowVideoRequest.ValidateAll() if the designated
// constraints aren't met.
type AuditArtshowVideoRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m AuditArtshowVideoRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m AuditArtshowVideoRequestMultiError) AllErrors() []error { return m }

// AuditArtshowVideoRequestValidationError is the validation error returned by
// AuditArtshowVideoRequest.Validate if the designated constraints aren't met.
type AuditArtshowVideoRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e AuditArtshowVideoRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e AuditArtshowVideoRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e AuditArtshowVideoRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e AuditArtshowVideoRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e AuditArtshowVideoRequestValidationError) ErrorName() string {
	return "AuditArtshowVideoRequestValidationError"
}

// Error satisfies the builtin error interface
func (e AuditArtshowVideoRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sAuditArtshowVideoRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = AuditArtshowVideoRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = AuditArtshowVideoRequestValidationError{}

// Validate checks the field values on UpdateArtshowVideoRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *UpdateArtshowVideoRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on UpdateArtshowVideoRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// UpdateArtshowVideoRequestMultiError, or nil if none found.
func (m *UpdateArtshowVideoRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *UpdateArtshowVideoRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	// no validation rules for ArtistUid

	// no validation rules for LockTime

	// no validation rules for VideoUrl

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	// no validation rules for ArtistName

	// no validation rules for Status

	if len(errors) > 0 {
		return UpdateArtshowVideoRequestMultiError(errors)
	}

	return nil
}

// UpdateArtshowVideoRequestMultiError is an error wrapping multiple validation
// errors returned by UpdateArtshowVideoRequest.ValidateAll() if the
// designated constraints aren't met.
type UpdateArtshowVideoRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m UpdateArtshowVideoRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m UpdateArtshowVideoRequestMultiError) AllErrors() []error { return m }

// UpdateArtshowVideoRequestValidationError is the validation error returned by
// UpdateArtshowVideoRequest.Validate if the designated constraints aren't met.
type UpdateArtshowVideoRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e UpdateArtshowVideoRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e UpdateArtshowVideoRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e UpdateArtshowVideoRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e UpdateArtshowVideoRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e UpdateArtshowVideoRequestValidationError) ErrorName() string {
	return "UpdateArtshowVideoRequestValidationError"
}

// Error satisfies the builtin error interface
func (e UpdateArtshowVideoRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sUpdateArtshowVideoRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = UpdateArtshowVideoRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = UpdateArtshowVideoRequestValidationError{}

// Validate checks the field values on DeletedArtshowVideoRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *DeletedArtshowVideoRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on DeletedArtshowVideoRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// DeletedArtshowVideoRequestMultiError, or nil if none found.
func (m *DeletedArtshowVideoRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *DeletedArtshowVideoRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	if len(errors) > 0 {
		return DeletedArtshowVideoRequestMultiError(errors)
	}

	return nil
}

// DeletedArtshowVideoRequestMultiError is an error wrapping multiple
// validation errors returned by DeletedArtshowVideoRequest.ValidateAll() if
// the designated constraints aren't met.
type DeletedArtshowVideoRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m DeletedArtshowVideoRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m DeletedArtshowVideoRequestMultiError) AllErrors() []error { return m }

// DeletedArtshowVideoRequestValidationError is the validation error returned
// by DeletedArtshowVideoRequest.Validate if the designated constraints aren't met.
type DeletedArtshowVideoRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e DeletedArtshowVideoRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e DeletedArtshowVideoRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e DeletedArtshowVideoRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e DeletedArtshowVideoRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e DeletedArtshowVideoRequestValidationError) ErrorName() string {
	return "DeletedArtshowVideoRequestValidationError"
}

// Error satisfies the builtin error interface
func (e DeletedArtshowVideoRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sDeletedArtshowVideoRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = DeletedArtshowVideoRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = DeletedArtshowVideoRequestValidationError{}

// Validate checks the field values on BatchCreateArtshowVideoRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *BatchCreateArtshowVideoRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on BatchCreateArtshowVideoRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// BatchCreateArtshowVideoRequestMultiError, or nil if none found.
func (m *BatchCreateArtshowVideoRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *BatchCreateArtshowVideoRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	for idx, item := range m.GetData() {
		_, _ = idx, item

		if all {
			switch v := interface{}(item).(type) {
			case interface{ ValidateAll() error }:
				if err := v.ValidateAll(); err != nil {
					errors = append(errors, BatchCreateArtshowVideoRequestValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			case interface{ Validate() error }:
				if err := v.Validate(); err != nil {
					errors = append(errors, BatchCreateArtshowVideoRequestValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			}
		} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
			if err := v.Validate(); err != nil {
				return BatchCreateArtshowVideoRequestValidationError{
					field:  fmt.Sprintf("Data[%v]", idx),
					reason: "embedded message failed validation",
					cause:  err,
				}
			}
		}

	}

	if len(errors) > 0 {
		return BatchCreateArtshowVideoRequestMultiError(errors)
	}

	return nil
}

// BatchCreateArtshowVideoRequestMultiError is an error wrapping multiple
// validation errors returned by BatchCreateArtshowVideoRequest.ValidateAll()
// if the designated constraints aren't met.
type BatchCreateArtshowVideoRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m BatchCreateArtshowVideoRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m BatchCreateArtshowVideoRequestMultiError) AllErrors() []error { return m }

// BatchCreateArtshowVideoRequestValidationError is the validation error
// returned by BatchCreateArtshowVideoRequest.Validate if the designated
// constraints aren't met.
type BatchCreateArtshowVideoRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e BatchCreateArtshowVideoRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e BatchCreateArtshowVideoRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e BatchCreateArtshowVideoRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e BatchCreateArtshowVideoRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e BatchCreateArtshowVideoRequestValidationError) ErrorName() string {
	return "BatchCreateArtshowVideoRequestValidationError"
}

// Error satisfies the builtin error interface
func (e BatchCreateArtshowVideoRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sBatchCreateArtshowVideoRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = BatchCreateArtshowVideoRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = BatchCreateArtshowVideoRequestValidationError{}

// Validate checks the field values on CheckeExistsRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *CheckeExistsRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on CheckeExistsRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// CheckeExistsRequestMultiError, or nil if none found.
func (m *CheckeExistsRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *CheckeExistsRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for LockTime

	if len(errors) > 0 {
		return CheckeExistsRequestMultiError(errors)
	}

	return nil
}

// CheckeExistsRequestMultiError is an error wrapping multiple validation
// errors returned by CheckeExistsRequest.ValidateAll() if the designated
// constraints aren't met.
type CheckeExistsRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m CheckeExistsRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m CheckeExistsRequestMultiError) AllErrors() []error { return m }

// CheckeExistsRequestValidationError is the validation error returned by
// CheckeExistsRequest.Validate if the designated constraints aren't met.
type CheckeExistsRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e CheckeExistsRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e CheckeExistsRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e CheckeExistsRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e CheckeExistsRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e CheckeExistsRequestValidationError) ErrorName() string {
	return "CheckeExistsRequestValidationError"
}

// Error satisfies the builtin error interface
func (e CheckeExistsRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sCheckeExistsRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = CheckeExistsRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = CheckeExistsRequestValidationError{}

// Validate checks the field values on GetArtshowVideoDetailRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtshowVideoDetailRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtshowVideoDetailRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtshowVideoDetailRequestMultiError, or nil if none found.
func (m *GetArtshowVideoDetailRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtshowVideoDetailRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for LockTime

	// no validation rules for Status

	// no validation rules for Id

	if len(errors) > 0 {
		return GetArtshowVideoDetailRequestMultiError(errors)
	}

	return nil
}

// GetArtshowVideoDetailRequestMultiError is an error wrapping multiple
// validation errors returned by GetArtshowVideoDetailRequest.ValidateAll() if
// the designated constraints aren't met.
type GetArtshowVideoDetailRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtshowVideoDetailRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtshowVideoDetailRequestMultiError) AllErrors() []error { return m }

// GetArtshowVideoDetailRequestValidationError is the validation error returned
// by GetArtshowVideoDetailRequest.Validate if the designated constraints
// aren't met.
type GetArtshowVideoDetailRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtshowVideoDetailRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtshowVideoDetailRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtshowVideoDetailRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtshowVideoDetailRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtshowVideoDetailRequestValidationError) ErrorName() string {
	return "GetArtshowVideoDetailRequestValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtshowVideoDetailRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtshowVideoDetailRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtshowVideoDetailRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtshowVideoDetailRequestValidationError{}

// Validate checks the field values on ArtistIndexInfo with the rules defined
// in the proto definition for this message. If any rules are violated, the
// first error encountered is returned, or nil if there are no violations.
func (m *ArtistIndexInfo) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on ArtistIndexInfo with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// ArtistIndexInfoMultiError, or nil if none found.
func (m *ArtistIndexInfo) ValidateAll() error {
	return m.validate(true)
}

func (m *ArtistIndexInfo) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for Title

	// no validation rules for Class

	// no validation rules for TitleScore

	// no validation rules for Score

	// no validation rules for Types

	// no validation rules for Status

	// no validation rules for LockTime

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	// no validation rules for AuditStatus

	// no validation rules for Id

	// no validation rules for CreatedAt

	// no validation rules for UpdatedAt

	// no validation rules for DeletedAt

	// no validation rules for Editable

	if len(errors) > 0 {
		return ArtistIndexInfoMultiError(errors)
	}

	return nil
}

// ArtistIndexInfoMultiError is an error wrapping multiple validation errors
// returned by ArtistIndexInfo.ValidateAll() if the designated constraints
// aren't met.
type ArtistIndexInfoMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m ArtistIndexInfoMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m ArtistIndexInfoMultiError) AllErrors() []error { return m }

// ArtistIndexInfoValidationError is the validation error returned by
// ArtistIndexInfo.Validate if the designated constraints aren't met.
type ArtistIndexInfoValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e ArtistIndexInfoValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e ArtistIndexInfoValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e ArtistIndexInfoValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e ArtistIndexInfoValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e ArtistIndexInfoValidationError) ErrorName() string { return "ArtistIndexInfoValidationError" }

// Error satisfies the builtin error interface
func (e ArtistIndexInfoValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sArtistIndexInfo.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = ArtistIndexInfoValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = ArtistIndexInfoValidationError{}

// Validate checks the field values on GetArtistIndexListResponse with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtistIndexListResponse) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistIndexListResponse with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtistIndexListResponseMultiError, or nil if none found.
func (m *GetArtistIndexListResponse) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistIndexListResponse) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	for idx, item := range m.GetData() {
		_, _ = idx, item

		if all {
			switch v := interface{}(item).(type) {
			case interface{ ValidateAll() error }:
				if err := v.ValidateAll(); err != nil {
					errors = append(errors, GetArtistIndexListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			case interface{ Validate() error }:
				if err := v.Validate(); err != nil {
					errors = append(errors, GetArtistIndexListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			}
		} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
			if err := v.Validate(); err != nil {
				return GetArtistIndexListResponseValidationError{
					field:  fmt.Sprintf("Data[%v]", idx),
					reason: "embedded message failed validation",
					cause:  err,
				}
			}
		}

	}

	if all {
		switch v := interface{}(m.GetPage()).(type) {
		case interface{ ValidateAll() error }:
			if err := v.ValidateAll(); err != nil {
				errors = append(errors, GetArtistIndexListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		case interface{ Validate() error }:
			if err := v.Validate(); err != nil {
				errors = append(errors, GetArtistIndexListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		}
	} else if v, ok := interface{}(m.GetPage()).(interface{ Validate() error }); ok {
		if err := v.Validate(); err != nil {
			return GetArtistIndexListResponseValidationError{
				field:  "Page",
				reason: "embedded message failed validation",
				cause:  err,
			}
		}
	}

	if len(errors) > 0 {
		return GetArtistIndexListResponseMultiError(errors)
	}

	return nil
}

// GetArtistIndexListResponseMultiError is an error wrapping multiple
// validation errors returned by GetArtistIndexListResponse.ValidateAll() if
// the designated constraints aren't met.
type GetArtistIndexListResponseMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistIndexListResponseMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistIndexListResponseMultiError) AllErrors() []error { return m }

// GetArtistIndexListResponseValidationError is the validation error returned
// by GetArtistIndexListResponse.Validate if the designated constraints aren't met.
type GetArtistIndexListResponseValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistIndexListResponseValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistIndexListResponseValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistIndexListResponseValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistIndexListResponseValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistIndexListResponseValidationError) ErrorName() string {
	return "GetArtistIndexListResponseValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistIndexListResponseValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistIndexListResponse.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistIndexListResponseValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistIndexListResponseValidationError{}

// Validate checks the field values on GetArtistIndexDetailRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtistIndexDetailRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistIndexDetailRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtistIndexDetailRequestMultiError, or nil if none found.
func (m *GetArtistIndexDetailRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistIndexDetailRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	if len(errors) > 0 {
		return GetArtistIndexDetailRequestMultiError(errors)
	}

	return nil
}

// GetArtistIndexDetailRequestMultiError is an error wrapping multiple
// validation errors returned by GetArtistIndexDetailRequest.ValidateAll() if
// the designated constraints aren't met.
type GetArtistIndexDetailRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistIndexDetailRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistIndexDetailRequestMultiError) AllErrors() []error { return m }

// GetArtistIndexDetailRequestValidationError is the validation error returned
// by GetArtistIndexDetailRequest.Validate if the designated constraints
// aren't met.
type GetArtistIndexDetailRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistIndexDetailRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistIndexDetailRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistIndexDetailRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistIndexDetailRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistIndexDetailRequestValidationError) ErrorName() string {
	return "GetArtistIndexDetailRequestValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistIndexDetailRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistIndexDetailRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistIndexDetailRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistIndexDetailRequestValidationError{}

// Validate checks the field values on GetArtistIndexListRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtistIndexListRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistIndexListRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// GetArtistIndexListRequestMultiError, or nil if none found.
func (m *GetArtistIndexListRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistIndexListRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for ArtistName

	// no validation rules for LockTime

	// no validation rules for AuditStatus

	// no validation rules for Status

	// no validation rules for Page

	// no validation rules for PageSize

	if len(errors) > 0 {
		return GetArtistIndexListRequestMultiError(errors)
	}

	return nil
}

// GetArtistIndexListRequestMultiError is an error wrapping multiple validation
// errors returned by GetArtistIndexListRequest.ValidateAll() if the
// designated constraints aren't met.
type GetArtistIndexListRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistIndexListRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistIndexListRequestMultiError) AllErrors() []error { return m }

// GetArtistIndexListRequestValidationError is the validation error returned by
// GetArtistIndexListRequest.Validate if the designated constraints aren't met.
type GetArtistIndexListRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistIndexListRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistIndexListRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistIndexListRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistIndexListRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistIndexListRequestValidationError) ErrorName() string {
	return "GetArtistIndexListRequestValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistIndexListRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistIndexListRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistIndexListRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistIndexListRequestValidationError{}

// Validate checks the field values on BatchCreateArtistIndexRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *BatchCreateArtistIndexRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on BatchCreateArtistIndexRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// BatchCreateArtistIndexRequestMultiError, or nil if none found.
func (m *BatchCreateArtistIndexRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *BatchCreateArtistIndexRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	if len(errors) > 0 {
		return BatchCreateArtistIndexRequestMultiError(errors)
	}

	return nil
}

// BatchCreateArtistIndexRequestMultiError is an error wrapping multiple
// validation errors returned by BatchCreateArtistIndexRequest.ValidateAll()
// if the designated constraints aren't met.
type BatchCreateArtistIndexRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m BatchCreateArtistIndexRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m BatchCreateArtistIndexRequestMultiError) AllErrors() []error { return m }

// BatchCreateArtistIndexRequestValidationError is the validation error
// returned by BatchCreateArtistIndexRequest.Validate if the designated
// constraints aren't met.
type BatchCreateArtistIndexRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e BatchCreateArtistIndexRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e BatchCreateArtistIndexRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e BatchCreateArtistIndexRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e BatchCreateArtistIndexRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e BatchCreateArtistIndexRequestValidationError) ErrorName() string {
	return "BatchCreateArtistIndexRequestValidationError"
}

// Error satisfies the builtin error interface
func (e BatchCreateArtistIndexRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sBatchCreateArtistIndexRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = BatchCreateArtistIndexRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = BatchCreateArtistIndexRequestValidationError{}

// Validate checks the field values on AuditArtistIndexRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *AuditArtistIndexRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on AuditArtistIndexRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// AuditArtistIndexRequestMultiError, or nil if none found.
func (m *AuditArtistIndexRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *AuditArtistIndexRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	if len(errors) > 0 {
		return AuditArtistIndexRequestMultiError(errors)
	}

	return nil
}

// AuditArtistIndexRequestMultiError is an error wrapping multiple validation
// errors returned by AuditArtistIndexRequest.ValidateAll() if the designated
// constraints aren't met.
type AuditArtistIndexRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m AuditArtistIndexRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m AuditArtistIndexRequestMultiError) AllErrors() []error { return m }

// AuditArtistIndexRequestValidationError is the validation error returned by
// AuditArtistIndexRequest.Validate if the designated constraints aren't met.
type AuditArtistIndexRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e AuditArtistIndexRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e AuditArtistIndexRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e AuditArtistIndexRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e AuditArtistIndexRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e AuditArtistIndexRequestValidationError) ErrorName() string {
	return "AuditArtistIndexRequestValidationError"
}

// Error satisfies the builtin error interface
func (e AuditArtistIndexRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sAuditArtistIndexRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = AuditArtistIndexRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = AuditArtistIndexRequestValidationError{}

// Validate checks the field values on UpdateArtistIndexRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *UpdateArtistIndexRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on UpdateArtistIndexRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// UpdateArtistIndexRequestMultiError, or nil if none found.
func (m *UpdateArtistIndexRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *UpdateArtistIndexRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	// no validation rules for TitleScore

	// no validation rules for Score

	// no validation rules for Status

	if len(errors) > 0 {
		return UpdateArtistIndexRequestMultiError(errors)
	}

	return nil
}

// UpdateArtistIndexRequestMultiError is an error wrapping multiple validation
// errors returned by UpdateArtistIndexRequest.ValidateAll() if the designated
// constraints aren't met.
type UpdateArtistIndexRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m UpdateArtistIndexRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m UpdateArtistIndexRequestMultiError) AllErrors() []error { return m }

// UpdateArtistIndexRequestValidationError is the validation error returned by
// UpdateArtistIndexRequest.Validate if the designated constraints aren't met.
type UpdateArtistIndexRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e UpdateArtistIndexRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e UpdateArtistIndexRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e UpdateArtistIndexRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e UpdateArtistIndexRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e UpdateArtistIndexRequestValidationError) ErrorName() string {
	return "UpdateArtistIndexRequestValidationError"
}

// Error satisfies the builtin error interface
func (e UpdateArtistIndexRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sUpdateArtistIndexRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = UpdateArtistIndexRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = UpdateArtistIndexRequestValidationError{}

// Validate checks the field values on DeletedArtistIndexRequest with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *DeletedArtistIndexRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on DeletedArtistIndexRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// DeletedArtistIndexRequestMultiError, or nil if none found.
func (m *DeletedArtistIndexRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *DeletedArtistIndexRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	if len(errors) > 0 {
		return DeletedArtistIndexRequestMultiError(errors)
	}

	return nil
}

// DeletedArtistIndexRequestMultiError is an error wrapping multiple validation
// errors returned by DeletedArtistIndexRequest.ValidateAll() if the
// designated constraints aren't met.
type DeletedArtistIndexRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m DeletedArtistIndexRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m DeletedArtistIndexRequestMultiError) AllErrors() []error { return m }

// DeletedArtistIndexRequestValidationError is the validation error returned by
// DeletedArtistIndexRequest.Validate if the designated constraints aren't met.
type DeletedArtistIndexRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e DeletedArtistIndexRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e DeletedArtistIndexRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e DeletedArtistIndexRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e DeletedArtistIndexRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e DeletedArtistIndexRequestValidationError) ErrorName() string {
	return "DeletedArtistIndexRequestValidationError"
}

// Error satisfies the builtin error interface
func (e DeletedArtistIndexRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sDeletedArtistIndexRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = DeletedArtistIndexRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = DeletedArtistIndexRequestValidationError{}

// Validate checks the field values on ArtistSupplementInfo with the rules
// defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *ArtistSupplementInfo) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on ArtistSupplementInfo with the rules
// defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// ArtistSupplementInfoMultiError, or nil if none found.
func (m *ArtistSupplementInfo) ValidateAll() error {
	return m.validate(true)
}

func (m *ArtistSupplementInfo) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for Status

	// no validation rules for LockTime

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	// no validation rules for ArtistName

	// no validation rules for ArtistProfile

	// no validation rules for CountryArtLevel

	// no validation rules for ArtistCertPic

	// no validation rules for BankNum

	// no validation rules for BankName

	// no validation rules for Id

	// no validation rules for CreatedAt

	// no validation rules for UpdatedAt

	// no validation rules for DeletedAt

	// no validation rules for Editable

	if len(errors) > 0 {
		return ArtistSupplementInfoMultiError(errors)
	}

	return nil
}

// ArtistSupplementInfoMultiError is an error wrapping multiple validation
// errors returned by ArtistSupplementInfo.ValidateAll() if the designated
// constraints aren't met.
type ArtistSupplementInfoMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m ArtistSupplementInfoMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m ArtistSupplementInfoMultiError) AllErrors() []error { return m }

// ArtistSupplementInfoValidationError is the validation error returned by
// ArtistSupplementInfo.Validate if the designated constraints aren't met.
type ArtistSupplementInfoValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e ArtistSupplementInfoValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e ArtistSupplementInfoValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e ArtistSupplementInfoValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e ArtistSupplementInfoValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e ArtistSupplementInfoValidationError) ErrorName() string {
	return "ArtistSupplementInfoValidationError"
}

// Error satisfies the builtin error interface
func (e ArtistSupplementInfoValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sArtistSupplementInfo.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = ArtistSupplementInfoValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = ArtistSupplementInfoValidationError{}

// Validate checks the field values on GetArtistSupplementListResponse with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtistSupplementListResponse) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistSupplementListResponse with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// GetArtistSupplementListResponseMultiError, or nil if none found.
func (m *GetArtistSupplementListResponse) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistSupplementListResponse) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	for idx, item := range m.GetData() {
		_, _ = idx, item

		if all {
			switch v := interface{}(item).(type) {
			case interface{ ValidateAll() error }:
				if err := v.ValidateAll(); err != nil {
					errors = append(errors, GetArtistSupplementListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			case interface{ Validate() error }:
				if err := v.Validate(); err != nil {
					errors = append(errors, GetArtistSupplementListResponseValidationError{
						field:  fmt.Sprintf("Data[%v]", idx),
						reason: "embedded message failed validation",
						cause:  err,
					})
				}
			}
		} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
			if err := v.Validate(); err != nil {
				return GetArtistSupplementListResponseValidationError{
					field:  fmt.Sprintf("Data[%v]", idx),
					reason: "embedded message failed validation",
					cause:  err,
				}
			}
		}

	}

	if all {
		switch v := interface{}(m.GetPage()).(type) {
		case interface{ ValidateAll() error }:
			if err := v.ValidateAll(); err != nil {
				errors = append(errors, GetArtistSupplementListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		case interface{ Validate() error }:
			if err := v.Validate(); err != nil {
				errors = append(errors, GetArtistSupplementListResponseValidationError{
					field:  "Page",
					reason: "embedded message failed validation",
					cause:  err,
				})
			}
		}
	} else if v, ok := interface{}(m.GetPage()).(interface{ Validate() error }); ok {
		if err := v.Validate(); err != nil {
			return GetArtistSupplementListResponseValidationError{
				field:  "Page",
				reason: "embedded message failed validation",
				cause:  err,
			}
		}
	}

	if len(errors) > 0 {
		return GetArtistSupplementListResponseMultiError(errors)
	}

	return nil
}

// GetArtistSupplementListResponseMultiError is an error wrapping multiple
// validation errors returned by GetArtistSupplementListResponse.ValidateAll()
// if the designated constraints aren't met.
type GetArtistSupplementListResponseMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistSupplementListResponseMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistSupplementListResponseMultiError) AllErrors() []error { return m }

// GetArtistSupplementListResponseValidationError is the validation error
// returned by GetArtistSupplementListResponse.Validate if the designated
// constraints aren't met.
type GetArtistSupplementListResponseValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistSupplementListResponseValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistSupplementListResponseValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistSupplementListResponseValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistSupplementListResponseValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistSupplementListResponseValidationError) ErrorName() string {
	return "GetArtistSupplementListResponseValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistSupplementListResponseValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistSupplementListResponse.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistSupplementListResponseValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistSupplementListResponseValidationError{}

// Validate checks the field values on GetArtistSupplementDetailRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the first error encountered is returned, or nil if there are
// no violations.
func (m *GetArtistSupplementDetailRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistSupplementDetailRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// GetArtistSupplementDetailRequestMultiError, or nil if none found.
func (m *GetArtistSupplementDetailRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistSupplementDetailRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	if len(errors) > 0 {
		return GetArtistSupplementDetailRequestMultiError(errors)
	}

	return nil
}

// GetArtistSupplementDetailRequestMultiError is an error wrapping multiple
// validation errors returned by
// GetArtistSupplementDetailRequest.ValidateAll() if the designated
// constraints aren't met.
type GetArtistSupplementDetailRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistSupplementDetailRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistSupplementDetailRequestMultiError) AllErrors() []error { return m }

// GetArtistSupplementDetailRequestValidationError is the validation error
// returned by GetArtistSupplementDetailRequest.Validate if the designated
// constraints aren't met.
type GetArtistSupplementDetailRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistSupplementDetailRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistSupplementDetailRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistSupplementDetailRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistSupplementDetailRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistSupplementDetailRequestValidationError) ErrorName() string {
	return "GetArtistSupplementDetailRequestValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistSupplementDetailRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistSupplementDetailRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistSupplementDetailRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistSupplementDetailRequestValidationError{}

// Validate checks the field values on GetArtistSupplementListRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *GetArtistSupplementListRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on GetArtistSupplementListRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// GetArtistSupplementListRequestMultiError, or nil if none found.
func (m *GetArtistSupplementListRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *GetArtistSupplementListRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for ArtistUid

	// no validation rules for ArtistName

	// no validation rules for LockTime

	// no validation rules for AuditStatus

	// no validation rules for Status

	// no validation rules for Page

	// no validation rules for PageSize

	if len(errors) > 0 {
		return GetArtistSupplementListRequestMultiError(errors)
	}

	return nil
}

// GetArtistSupplementListRequestMultiError is an error wrapping multiple
// validation errors returned by GetArtistSupplementListRequest.ValidateAll()
// if the designated constraints aren't met.
type GetArtistSupplementListRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m GetArtistSupplementListRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m GetArtistSupplementListRequestMultiError) AllErrors() []error { return m }

// GetArtistSupplementListRequestValidationError is the validation error
// returned by GetArtistSupplementListRequest.Validate if the designated
// constraints aren't met.
type GetArtistSupplementListRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e GetArtistSupplementListRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e GetArtistSupplementListRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e GetArtistSupplementListRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e GetArtistSupplementListRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e GetArtistSupplementListRequestValidationError) ErrorName() string {
	return "GetArtistSupplementListRequestValidationError"
}

// Error satisfies the builtin error interface
func (e GetArtistSupplementListRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sGetArtistSupplementListRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = GetArtistSupplementListRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = GetArtistSupplementListRequestValidationError{}

// Validate checks the field values on BatchCreateArtistSupplementRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the first error encountered is returned, or nil if there are
// no violations.
func (m *BatchCreateArtistSupplementRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on BatchCreateArtistSupplementRequest
// with the rules defined in the proto definition for this message. If any
// rules are violated, the result is a list of violation errors wrapped in
// BatchCreateArtistSupplementRequestMultiError, or nil if none found.
func (m *BatchCreateArtistSupplementRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *BatchCreateArtistSupplementRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	if len(errors) > 0 {
		return BatchCreateArtistSupplementRequestMultiError(errors)
	}

	return nil
}

// BatchCreateArtistSupplementRequestMultiError is an error wrapping multiple
// validation errors returned by
// BatchCreateArtistSupplementRequest.ValidateAll() if the designated
// constraints aren't met.
type BatchCreateArtistSupplementRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m BatchCreateArtistSupplementRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m BatchCreateArtistSupplementRequestMultiError) AllErrors() []error { return m }

// BatchCreateArtistSupplementRequestValidationError is the validation error
// returned by BatchCreateArtistSupplementRequest.Validate if the designated
// constraints aren't met.
type BatchCreateArtistSupplementRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e BatchCreateArtistSupplementRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e BatchCreateArtistSupplementRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e BatchCreateArtistSupplementRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e BatchCreateArtistSupplementRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e BatchCreateArtistSupplementRequestValidationError) ErrorName() string {
	return "BatchCreateArtistSupplementRequestValidationError"
}

// Error satisfies the builtin error interface
func (e BatchCreateArtistSupplementRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sBatchCreateArtistSupplementRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = BatchCreateArtistSupplementRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = BatchCreateArtistSupplementRequestValidationError{}

// Validate checks the field values on AuditArtistSupplementRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *AuditArtistSupplementRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on AuditArtistSupplementRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the result is a list of violation errors wrapped in
// AuditArtistSupplementRequestMultiError, or nil if none found.
func (m *AuditArtistSupplementRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *AuditArtistSupplementRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for AuditStatus

	// no validation rules for AuditMark1

	// no validation rules for AuditMark2

	if len(errors) > 0 {
		return AuditArtistSupplementRequestMultiError(errors)
	}

	return nil
}

// AuditArtistSupplementRequestMultiError is an error wrapping multiple
// validation errors returned by AuditArtistSupplementRequest.ValidateAll() if
// the designated constraints aren't met.
type AuditArtistSupplementRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m AuditArtistSupplementRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m AuditArtistSupplementRequestMultiError) AllErrors() []error { return m }

// AuditArtistSupplementRequestValidationError is the validation error returned
// by AuditArtistSupplementRequest.Validate if the designated constraints
// aren't met.
type AuditArtistSupplementRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e AuditArtistSupplementRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e AuditArtistSupplementRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e AuditArtistSupplementRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e AuditArtistSupplementRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e AuditArtistSupplementRequestValidationError) ErrorName() string {
	return "AuditArtistSupplementRequestValidationError"
}

// Error satisfies the builtin error interface
func (e AuditArtistSupplementRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sAuditArtistSupplementRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = AuditArtistSupplementRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = AuditArtistSupplementRequestValidationError{}

// Validate checks the field values on UpdateArtistSupplementRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *UpdateArtistSupplementRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on UpdateArtistSupplementRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// UpdateArtistSupplementRequestMultiError, or nil if none found.
func (m *UpdateArtistSupplementRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *UpdateArtistSupplementRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	// no validation rules for ArtistProfile

	// no validation rules for CountryArtLevel

	// no validation rules for ArtistCertPic

	// no validation rules for BankNum

	// no validation rules for BankName

	if len(errors) > 0 {
		return UpdateArtistSupplementRequestMultiError(errors)
	}

	return nil
}

// UpdateArtistSupplementRequestMultiError is an error wrapping multiple
// validation errors returned by UpdateArtistSupplementRequest.ValidateAll()
// if the designated constraints aren't met.
type UpdateArtistSupplementRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m UpdateArtistSupplementRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m UpdateArtistSupplementRequestMultiError) AllErrors() []error { return m }

// UpdateArtistSupplementRequestValidationError is the validation error
// returned by UpdateArtistSupplementRequest.Validate if the designated
// constraints aren't met.
type UpdateArtistSupplementRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e UpdateArtistSupplementRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e UpdateArtistSupplementRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e UpdateArtistSupplementRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e UpdateArtistSupplementRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e UpdateArtistSupplementRequestValidationError) ErrorName() string {
	return "UpdateArtistSupplementRequestValidationError"
}

// Error satisfies the builtin error interface
func (e UpdateArtistSupplementRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sUpdateArtistSupplementRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = UpdateArtistSupplementRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = UpdateArtistSupplementRequestValidationError{}

// Validate checks the field values on DeletedArtistSupplementRequest with the
// rules defined in the proto definition for this message. If any rules are
// violated, the first error encountered is returned, or nil if there are no violations.
func (m *DeletedArtistSupplementRequest) Validate() error {
	return m.validate(false)
}

// ValidateAll checks the field values on DeletedArtistSupplementRequest with
// the rules defined in the proto definition for this message. If any rules
// are violated, the result is a list of violation errors wrapped in
// DeletedArtistSupplementRequestMultiError, or nil if none found.
func (m *DeletedArtistSupplementRequest) ValidateAll() error {
	return m.validate(true)
}

func (m *DeletedArtistSupplementRequest) validate(all bool) error {
	if m == nil {
		return nil
	}

	var errors []error

	// no validation rules for Id

	if len(errors) > 0 {
		return DeletedArtistSupplementRequestMultiError(errors)
	}

	return nil
}

// DeletedArtistSupplementRequestMultiError is an error wrapping multiple
// validation errors returned by DeletedArtistSupplementRequest.ValidateAll()
// if the designated constraints aren't met.
type DeletedArtistSupplementRequestMultiError []error

// Error returns a concatenation of all the error messages it wraps.
func (m DeletedArtistSupplementRequestMultiError) Error() string {
	var msgs []string
	for _, err := range m {
		msgs = append(msgs, err.Error())
	}
	return strings.Join(msgs, "; ")
}

// AllErrors returns a list of validation violation errors.
func (m DeletedArtistSupplementRequestMultiError) AllErrors() []error { return m }

// DeletedArtistSupplementRequestValidationError is the validation error
// returned by DeletedArtistSupplementRequest.Validate if the designated
// constraints aren't met.
type DeletedArtistSupplementRequestValidationError struct {
	field  string
	reason string
	cause  error
	key    bool
}

// Field function returns field value.
func (e DeletedArtistSupplementRequestValidationError) Field() string { return e.field }

// Reason function returns reason value.
func (e DeletedArtistSupplementRequestValidationError) Reason() string { return e.reason }

// Cause function returns cause value.
func (e DeletedArtistSupplementRequestValidationError) Cause() error { return e.cause }

// Key function returns key value.
func (e DeletedArtistSupplementRequestValidationError) Key() bool { return e.key }

// ErrorName returns error name.
func (e DeletedArtistSupplementRequestValidationError) ErrorName() string {
	return "DeletedArtistSupplementRequestValidationError"
}

// Error satisfies the builtin error interface
func (e DeletedArtistSupplementRequestValidationError) Error() string {
	cause := ""
	if e.cause != nil {
		cause = fmt.Sprintf(" | caused by: %v", e.cause)
	}

	key := ""
	if e.key {
		key = "key for "
	}

	return fmt.Sprintf(
		"invalid %sDeletedArtistSupplementRequest.%s: %s%s",
		key,
		e.field,
		e.reason,
		cause)
}

var _ error = DeletedArtistSupplementRequestValidationError{}

var _ interface {
	Field() string
	Reason() string
	Key() bool
	Cause() error
	ErrorName() string
} = DeletedArtistSupplementRequestValidationError{}
