// Code generated by ent, DO NOT EDIT.

package players

import (
	"juwan-backend/app/player/rpc/internal/models/predicate"
	"time"

	"entgo.io/ent/dialect/sql"
	"github.com/lib/pq"
	"github.com/shopspring/decimal"
)

// ID filters vertices based on their ID field.
func ID(id int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldID, id))
}

// IDEQ applies the EQ predicate on the ID field.
func IDEQ(id int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldID, id))
}

// IDNEQ applies the NEQ predicate on the ID field.
func IDNEQ(id int64) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldID, id))
}

// IDIn applies the In predicate on the ID field.
func IDIn(ids ...int64) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldID, ids...))
}

// IDNotIn applies the NotIn predicate on the ID field.
func IDNotIn(ids ...int64) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldID, ids...))
}

// IDGT applies the GT predicate on the ID field.
func IDGT(id int64) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldID, id))
}

// IDGTE applies the GTE predicate on the ID field.
func IDGTE(id int64) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldID, id))
}

// IDLT applies the LT predicate on the ID field.
func IDLT(id int64) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldID, id))
}

// IDLTE applies the LTE predicate on the ID field.
func IDLTE(id int64) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldID, id))
}

// UserID applies equality check predicate on the "user_id" field. It's identical to UserIDEQ.
func UserID(v int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldUserID, v))
}

// Status applies equality check predicate on the "status" field. It's identical to StatusEQ.
func Status(v string) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldStatus, v))
}

// Gender applies equality check predicate on the "gender" field. It's identical to GenderEQ.
func Gender(v bool) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldGender, v))
}

// Rating applies equality check predicate on the "rating" field. It's identical to RatingEQ.
func Rating(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldRating, v))
}

// TotalOrders applies equality check predicate on the "total_orders" field. It's identical to TotalOrdersEQ.
func TotalOrders(v int) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldTotalOrders, v))
}

// CompletedOrders applies equality check predicate on the "completed_orders" field. It's identical to CompletedOrdersEQ.
func CompletedOrders(v int) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldCompletedOrders, v))
}

// ShopID applies equality check predicate on the "shop_id" field. It's identical to ShopIDEQ.
func ShopID(v int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldShopID, v))
}

// Games applies equality check predicate on the "games" field. It's identical to GamesEQ.
func Games(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldGames, v))
}

// CreatedAt applies equality check predicate on the "created_at" field. It's identical to CreatedAtEQ.
func CreatedAt(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldCreatedAt, v))
}

// UpdatedAt applies equality check predicate on the "updated_at" field. It's identical to UpdatedAtEQ.
func UpdatedAt(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldUpdatedAt, v))
}

// UserIDEQ applies the EQ predicate on the "user_id" field.
func UserIDEQ(v int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldUserID, v))
}

// UserIDNEQ applies the NEQ predicate on the "user_id" field.
func UserIDNEQ(v int64) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldUserID, v))
}

// UserIDIn applies the In predicate on the "user_id" field.
func UserIDIn(vs ...int64) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldUserID, vs...))
}

// UserIDNotIn applies the NotIn predicate on the "user_id" field.
func UserIDNotIn(vs ...int64) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldUserID, vs...))
}

// UserIDGT applies the GT predicate on the "user_id" field.
func UserIDGT(v int64) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldUserID, v))
}

// UserIDGTE applies the GTE predicate on the "user_id" field.
func UserIDGTE(v int64) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldUserID, v))
}

// UserIDLT applies the LT predicate on the "user_id" field.
func UserIDLT(v int64) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldUserID, v))
}

// UserIDLTE applies the LTE predicate on the "user_id" field.
func UserIDLTE(v int64) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldUserID, v))
}

// StatusEQ applies the EQ predicate on the "status" field.
func StatusEQ(v string) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldStatus, v))
}

// StatusNEQ applies the NEQ predicate on the "status" field.
func StatusNEQ(v string) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldStatus, v))
}

// StatusIn applies the In predicate on the "status" field.
func StatusIn(vs ...string) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldStatus, vs...))
}

// StatusNotIn applies the NotIn predicate on the "status" field.
func StatusNotIn(vs ...string) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldStatus, vs...))
}

// StatusGT applies the GT predicate on the "status" field.
func StatusGT(v string) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldStatus, v))
}

// StatusGTE applies the GTE predicate on the "status" field.
func StatusGTE(v string) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldStatus, v))
}

// StatusLT applies the LT predicate on the "status" field.
func StatusLT(v string) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldStatus, v))
}

// StatusLTE applies the LTE predicate on the "status" field.
func StatusLTE(v string) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldStatus, v))
}

// StatusContains applies the Contains predicate on the "status" field.
func StatusContains(v string) predicate.Players {
	return predicate.Players(sql.FieldContains(FieldStatus, v))
}

// StatusHasPrefix applies the HasPrefix predicate on the "status" field.
func StatusHasPrefix(v string) predicate.Players {
	return predicate.Players(sql.FieldHasPrefix(FieldStatus, v))
}

// StatusHasSuffix applies the HasSuffix predicate on the "status" field.
func StatusHasSuffix(v string) predicate.Players {
	return predicate.Players(sql.FieldHasSuffix(FieldStatus, v))
}

// StatusEqualFold applies the EqualFold predicate on the "status" field.
func StatusEqualFold(v string) predicate.Players {
	return predicate.Players(sql.FieldEqualFold(FieldStatus, v))
}

// StatusContainsFold applies the ContainsFold predicate on the "status" field.
func StatusContainsFold(v string) predicate.Players {
	return predicate.Players(sql.FieldContainsFold(FieldStatus, v))
}

// GenderEQ applies the EQ predicate on the "gender" field.
func GenderEQ(v bool) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldGender, v))
}

// GenderNEQ applies the NEQ predicate on the "gender" field.
func GenderNEQ(v bool) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldGender, v))
}

// RatingEQ applies the EQ predicate on the "rating" field.
func RatingEQ(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldRating, v))
}

// RatingNEQ applies the NEQ predicate on the "rating" field.
func RatingNEQ(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldRating, v))
}

// RatingIn applies the In predicate on the "rating" field.
func RatingIn(vs ...decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldRating, vs...))
}

// RatingNotIn applies the NotIn predicate on the "rating" field.
func RatingNotIn(vs ...decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldRating, vs...))
}

// RatingGT applies the GT predicate on the "rating" field.
func RatingGT(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldRating, v))
}

// RatingGTE applies the GTE predicate on the "rating" field.
func RatingGTE(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldRating, v))
}

// RatingLT applies the LT predicate on the "rating" field.
func RatingLT(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldRating, v))
}

// RatingLTE applies the LTE predicate on the "rating" field.
func RatingLTE(v decimal.Decimal) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldRating, v))
}

// RatingIsNil applies the IsNil predicate on the "rating" field.
func RatingIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldRating))
}

// RatingNotNil applies the NotNil predicate on the "rating" field.
func RatingNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldRating))
}

// TotalOrdersEQ applies the EQ predicate on the "total_orders" field.
func TotalOrdersEQ(v int) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldTotalOrders, v))
}

// TotalOrdersNEQ applies the NEQ predicate on the "total_orders" field.
func TotalOrdersNEQ(v int) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldTotalOrders, v))
}

// TotalOrdersIn applies the In predicate on the "total_orders" field.
func TotalOrdersIn(vs ...int) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldTotalOrders, vs...))
}

// TotalOrdersNotIn applies the NotIn predicate on the "total_orders" field.
func TotalOrdersNotIn(vs ...int) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldTotalOrders, vs...))
}

// TotalOrdersGT applies the GT predicate on the "total_orders" field.
func TotalOrdersGT(v int) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldTotalOrders, v))
}

// TotalOrdersGTE applies the GTE predicate on the "total_orders" field.
func TotalOrdersGTE(v int) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldTotalOrders, v))
}

// TotalOrdersLT applies the LT predicate on the "total_orders" field.
func TotalOrdersLT(v int) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldTotalOrders, v))
}

// TotalOrdersLTE applies the LTE predicate on the "total_orders" field.
func TotalOrdersLTE(v int) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldTotalOrders, v))
}

// TotalOrdersIsNil applies the IsNil predicate on the "total_orders" field.
func TotalOrdersIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldTotalOrders))
}

// TotalOrdersNotNil applies the NotNil predicate on the "total_orders" field.
func TotalOrdersNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldTotalOrders))
}

// CompletedOrdersEQ applies the EQ predicate on the "completed_orders" field.
func CompletedOrdersEQ(v int) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldCompletedOrders, v))
}

// CompletedOrdersNEQ applies the NEQ predicate on the "completed_orders" field.
func CompletedOrdersNEQ(v int) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldCompletedOrders, v))
}

// CompletedOrdersIn applies the In predicate on the "completed_orders" field.
func CompletedOrdersIn(vs ...int) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldCompletedOrders, vs...))
}

// CompletedOrdersNotIn applies the NotIn predicate on the "completed_orders" field.
func CompletedOrdersNotIn(vs ...int) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldCompletedOrders, vs...))
}

// CompletedOrdersGT applies the GT predicate on the "completed_orders" field.
func CompletedOrdersGT(v int) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldCompletedOrders, v))
}

// CompletedOrdersGTE applies the GTE predicate on the "completed_orders" field.
func CompletedOrdersGTE(v int) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldCompletedOrders, v))
}

// CompletedOrdersLT applies the LT predicate on the "completed_orders" field.
func CompletedOrdersLT(v int) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldCompletedOrders, v))
}

// CompletedOrdersLTE applies the LTE predicate on the "completed_orders" field.
func CompletedOrdersLTE(v int) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldCompletedOrders, v))
}

// CompletedOrdersIsNil applies the IsNil predicate on the "completed_orders" field.
func CompletedOrdersIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldCompletedOrders))
}

// CompletedOrdersNotNil applies the NotNil predicate on the "completed_orders" field.
func CompletedOrdersNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldCompletedOrders))
}

// ShopIDEQ applies the EQ predicate on the "shop_id" field.
func ShopIDEQ(v int64) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldShopID, v))
}

// ShopIDNEQ applies the NEQ predicate on the "shop_id" field.
func ShopIDNEQ(v int64) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldShopID, v))
}

// ShopIDIn applies the In predicate on the "shop_id" field.
func ShopIDIn(vs ...int64) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldShopID, vs...))
}

// ShopIDNotIn applies the NotIn predicate on the "shop_id" field.
func ShopIDNotIn(vs ...int64) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldShopID, vs...))
}

// ShopIDGT applies the GT predicate on the "shop_id" field.
func ShopIDGT(v int64) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldShopID, v))
}

// ShopIDGTE applies the GTE predicate on the "shop_id" field.
func ShopIDGTE(v int64) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldShopID, v))
}

// ShopIDLT applies the LT predicate on the "shop_id" field.
func ShopIDLT(v int64) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldShopID, v))
}

// ShopIDLTE applies the LTE predicate on the "shop_id" field.
func ShopIDLTE(v int64) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldShopID, v))
}

// ShopIDIsNil applies the IsNil predicate on the "shop_id" field.
func ShopIDIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldShopID))
}

// ShopIDNotNil applies the NotNil predicate on the "shop_id" field.
func ShopIDNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldShopID))
}

// TagsIsNil applies the IsNil predicate on the "tags" field.
func TagsIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldTags))
}

// TagsNotNil applies the NotNil predicate on the "tags" field.
func TagsNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldTags))
}

// GamesEQ applies the EQ predicate on the "games" field.
func GamesEQ(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldGames, v))
}

// GamesNEQ applies the NEQ predicate on the "games" field.
func GamesNEQ(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldGames, v))
}

// GamesIn applies the In predicate on the "games" field.
func GamesIn(vs ...pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldGames, vs...))
}

// GamesNotIn applies the NotIn predicate on the "games" field.
func GamesNotIn(vs ...pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldGames, vs...))
}

// GamesGT applies the GT predicate on the "games" field.
func GamesGT(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldGames, v))
}

// GamesGTE applies the GTE predicate on the "games" field.
func GamesGTE(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldGames, v))
}

// GamesLT applies the LT predicate on the "games" field.
func GamesLT(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldGames, v))
}

// GamesLTE applies the LTE predicate on the "games" field.
func GamesLTE(v pq.Int64Array) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldGames, v))
}

// GamesIsNil applies the IsNil predicate on the "games" field.
func GamesIsNil() predicate.Players {
	return predicate.Players(sql.FieldIsNull(FieldGames))
}

// GamesNotNil applies the NotNil predicate on the "games" field.
func GamesNotNil() predicate.Players {
	return predicate.Players(sql.FieldNotNull(FieldGames))
}

// CreatedAtEQ applies the EQ predicate on the "created_at" field.
func CreatedAtEQ(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldCreatedAt, v))
}

// CreatedAtNEQ applies the NEQ predicate on the "created_at" field.
func CreatedAtNEQ(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldCreatedAt, v))
}

// CreatedAtIn applies the In predicate on the "created_at" field.
func CreatedAtIn(vs ...time.Time) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldCreatedAt, vs...))
}

// CreatedAtNotIn applies the NotIn predicate on the "created_at" field.
func CreatedAtNotIn(vs ...time.Time) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldCreatedAt, vs...))
}

// CreatedAtGT applies the GT predicate on the "created_at" field.
func CreatedAtGT(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldCreatedAt, v))
}

// CreatedAtGTE applies the GTE predicate on the "created_at" field.
func CreatedAtGTE(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldCreatedAt, v))
}

// CreatedAtLT applies the LT predicate on the "created_at" field.
func CreatedAtLT(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldCreatedAt, v))
}

// CreatedAtLTE applies the LTE predicate on the "created_at" field.
func CreatedAtLTE(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldCreatedAt, v))
}

// UpdatedAtEQ applies the EQ predicate on the "updated_at" field.
func UpdatedAtEQ(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldEQ(FieldUpdatedAt, v))
}

// UpdatedAtNEQ applies the NEQ predicate on the "updated_at" field.
func UpdatedAtNEQ(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldNEQ(FieldUpdatedAt, v))
}

// UpdatedAtIn applies the In predicate on the "updated_at" field.
func UpdatedAtIn(vs ...time.Time) predicate.Players {
	return predicate.Players(sql.FieldIn(FieldUpdatedAt, vs...))
}

// UpdatedAtNotIn applies the NotIn predicate on the "updated_at" field.
func UpdatedAtNotIn(vs ...time.Time) predicate.Players {
	return predicate.Players(sql.FieldNotIn(FieldUpdatedAt, vs...))
}

// UpdatedAtGT applies the GT predicate on the "updated_at" field.
func UpdatedAtGT(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldGT(FieldUpdatedAt, v))
}

// UpdatedAtGTE applies the GTE predicate on the "updated_at" field.
func UpdatedAtGTE(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldGTE(FieldUpdatedAt, v))
}

// UpdatedAtLT applies the LT predicate on the "updated_at" field.
func UpdatedAtLT(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldLT(FieldUpdatedAt, v))
}

// UpdatedAtLTE applies the LTE predicate on the "updated_at" field.
func UpdatedAtLTE(v time.Time) predicate.Players {
	return predicate.Players(sql.FieldLTE(FieldUpdatedAt, v))
}

// And groups predicates with the AND operator between them.
func And(predicates ...predicate.Players) predicate.Players {
	return predicate.Players(sql.AndPredicates(predicates...))
}

// Or groups predicates with the OR operator between them.
func Or(predicates ...predicate.Players) predicate.Players {
	return predicate.Players(sql.OrPredicates(predicates...))
}

// Not applies the not operator on the given predicate.
func Not(p predicate.Players) predicate.Players {
	return predicate.Players(sql.NotPredicates(p))
}
