func TimeOptionalEQ(v time.Time) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldTimeOptional), v))
	})
}
TimeOptionalEQ applies the EQ predicate on the "time_optional" field.
package messagewithoptionals
import (
	"time"
	"entgo.io/contrib/entproto/internal/entprototest/ent/predicate"
	"entgo.io/ent/dialect/sql"
	"github.com/google/uuid"
)
func ID(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldID), id))
	})
}
func IDEQ(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldID), id))
	})
}
func IDNEQ(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldID), id))
	})
}
func IDIn(ids ...int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(ids) == 0 {
			s.Where(sql.False())
			return
		}
		v := make([]interface{}, len(ids))
		for i := range v {
			v[i] = ids[i]
		}
		s.Where(sql.In(s.C(FieldID), v...))
	})
}
func IDNotIn(ids ...int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(ids) == 0 {
			s.Where(sql.False())
			return
		}
		v := make([]interface{}, len(ids))
		for i := range v {
			v[i] = ids[i]
		}
		s.Where(sql.NotIn(s.C(FieldID), v...))
	})
}
func IDGT(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldID), id))
	})
}
func IDGTE(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldID), id))
	})
}
func IDLT(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldID), id))
	})
}
func IDLTE(id int) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldID), id))
	})
}
func StrOptional(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldStrOptional), v))
	})
}
func IntOptional(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldIntOptional), v))
	})
}
func UintOptional(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldUintOptional), v))
	})
}
func FloatOptional(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldFloatOptional), v))
	})
}
func BoolOptional(v bool) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldBoolOptional), v))
	})
}
func BytesOptional(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldBytesOptional), v))
	})
}
func UUIDOptional(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldUUIDOptional), v))
	})
}
func TimeOptional(v time.Time) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldTimeOptional), v))
	})
}
func StrOptionalEQ(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldStrOptional), v))
	})
}
func StrOptionalNEQ(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldStrOptional), v))
	})
}
func StrOptionalIn(vs ...string) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldStrOptional), v...))
	})
}
func StrOptionalNotIn(vs ...string) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldStrOptional), v...))
	})
}
func StrOptionalGT(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldStrOptional), v))
	})
}
func StrOptionalGTE(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldStrOptional), v))
	})
}
func StrOptionalLT(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldStrOptional), v))
	})
}
func StrOptionalLTE(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldStrOptional), v))
	})
}
func StrOptionalContains(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.Contains(s.C(FieldStrOptional), v))
	})
}
func StrOptionalHasPrefix(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.HasPrefix(s.C(FieldStrOptional), v))
	})
}
func StrOptionalHasSuffix(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.HasSuffix(s.C(FieldStrOptional), v))
	})
}
func StrOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldStrOptional)))
	})
}
func StrOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldStrOptional)))
	})
}
func StrOptionalEqualFold(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EqualFold(s.C(FieldStrOptional), v))
	})
}
func StrOptionalContainsFold(v string) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.ContainsFold(s.C(FieldStrOptional), v))
	})
}
func IntOptionalEQ(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldIntOptional), v))
	})
}
func IntOptionalNEQ(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldIntOptional), v))
	})
}
func IntOptionalIn(vs ...int8) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldIntOptional), v...))
	})
}
func IntOptionalNotIn(vs ...int8) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldIntOptional), v...))
	})
}
func IntOptionalGT(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldIntOptional), v))
	})
}
func IntOptionalGTE(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldIntOptional), v))
	})
}
func IntOptionalLT(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldIntOptional), v))
	})
}
func IntOptionalLTE(v int8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldIntOptional), v))
	})
}
func IntOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldIntOptional)))
	})
}
func IntOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldIntOptional)))
	})
}
func UintOptionalEQ(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldUintOptional), v))
	})
}
func UintOptionalNEQ(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldUintOptional), v))
	})
}
func UintOptionalIn(vs ...uint8) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldUintOptional), v...))
	})
}
func UintOptionalNotIn(vs ...uint8) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldUintOptional), v...))
	})
}
func UintOptionalGT(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldUintOptional), v))
	})
}
func UintOptionalGTE(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldUintOptional), v))
	})
}
func UintOptionalLT(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldUintOptional), v))
	})
}
func UintOptionalLTE(v uint8) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldUintOptional), v))
	})
}
func UintOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldUintOptional)))
	})
}
func UintOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldUintOptional)))
	})
}
func FloatOptionalEQ(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalNEQ(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalIn(vs ...float32) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldFloatOptional), v...))
	})
}
func FloatOptionalNotIn(vs ...float32) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldFloatOptional), v...))
	})
}
func FloatOptionalGT(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalGTE(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalLT(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalLTE(v float32) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldFloatOptional), v))
	})
}
func FloatOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldFloatOptional)))
	})
}
func FloatOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldFloatOptional)))
	})
}
func BoolOptionalEQ(v bool) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldBoolOptional), v))
	})
}
func BoolOptionalNEQ(v bool) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldBoolOptional), v))
	})
}
func BoolOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldBoolOptional)))
	})
}
func BoolOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldBoolOptional)))
	})
}
func BytesOptionalEQ(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalNEQ(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalIn(vs ...[]byte) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldBytesOptional), v...))
	})
}
func BytesOptionalNotIn(vs ...[]byte) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldBytesOptional), v...))
	})
}
func BytesOptionalGT(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalGTE(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalLT(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalLTE(v []byte) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldBytesOptional), v))
	})
}
func BytesOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldBytesOptional)))
	})
}
func BytesOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldBytesOptional)))
	})
}
func UUIDOptionalEQ(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.EQ(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalNEQ(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NEQ(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalIn(vs ...uuid.UUID) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.In(s.C(FieldUUIDOptional), v...))
	})
}
func UUIDOptionalNotIn(vs ...uuid.UUID) predicate.MessageWithOptionals {
	v := make([]interface{}, len(vs))
	for i := range v {
		v[i] = vs[i]
	}
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		if len(v) == 0 {
			s.Where(sql.False())
			return
		}
		s.Where(sql.NotIn(s.C(FieldUUIDOptional), v...))
	})
}
func UUIDOptionalGT(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GT(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalGTE(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.GTE(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalLT(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LT(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalLTE(v uuid.UUID) predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.LTE(s.C(FieldUUIDOptional), v))
	})
}
func UUIDOptionalIsNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.IsNull(s.C(FieldUUIDOptional)))
	})
}
func UUIDOptionalNotNil() predicate.MessageWithOptionals {
	return predicate.MessageWithOptionals(func(s *sql.Selector) {
		s.Where(sql.NotNull(s.C(FieldUUIDOptional)))
	})
}