// Code generated by ent, DO NOT EDIT.

package step

import (
	"time"

	"entgo.io/ent/dialect/sql"
	"github.com/TSELab/astra/internal/store/ent/predicate"
)

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

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

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

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

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

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

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

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

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

// AstraID applies equality check predicate on the "astra_id" field. It's identical to AstraIDEQ.
func AstraID(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldAstraID, v))
}

// Command applies equality check predicate on the "command" field. It's identical to CommandEQ.
func Command(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldCommand, v))
}

// Arch applies equality check predicate on the "Arch" field. It's identical to ArchEQ.
func Arch(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldArch, v))
}

// Timestamp applies equality check predicate on the "timestamp" field. It's identical to TimestampEQ.
func Timestamp(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldTimestamp, v))
}

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

// AstraIDEQ applies the EQ predicate on the "astra_id" field.
func AstraIDEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldAstraID, v))
}

// AstraIDNEQ applies the NEQ predicate on the "astra_id" field.
func AstraIDNEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldNEQ(FieldAstraID, v))
}

// AstraIDIn applies the In predicate on the "astra_id" field.
func AstraIDIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldIn(FieldAstraID, vs...))
}

// AstraIDNotIn applies the NotIn predicate on the "astra_id" field.
func AstraIDNotIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldNotIn(FieldAstraID, vs...))
}

// AstraIDGT applies the GT predicate on the "astra_id" field.
func AstraIDGT(v string) predicate.Step {
	return predicate.Step(sql.FieldGT(FieldAstraID, v))
}

// AstraIDGTE applies the GTE predicate on the "astra_id" field.
func AstraIDGTE(v string) predicate.Step {
	return predicate.Step(sql.FieldGTE(FieldAstraID, v))
}

// AstraIDLT applies the LT predicate on the "astra_id" field.
func AstraIDLT(v string) predicate.Step {
	return predicate.Step(sql.FieldLT(FieldAstraID, v))
}

// AstraIDLTE applies the LTE predicate on the "astra_id" field.
func AstraIDLTE(v string) predicate.Step {
	return predicate.Step(sql.FieldLTE(FieldAstraID, v))
}

// AstraIDContains applies the Contains predicate on the "astra_id" field.
func AstraIDContains(v string) predicate.Step {
	return predicate.Step(sql.FieldContains(FieldAstraID, v))
}

// AstraIDHasPrefix applies the HasPrefix predicate on the "astra_id" field.
func AstraIDHasPrefix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasPrefix(FieldAstraID, v))
}

// AstraIDHasSuffix applies the HasSuffix predicate on the "astra_id" field.
func AstraIDHasSuffix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasSuffix(FieldAstraID, v))
}

// AstraIDEqualFold applies the EqualFold predicate on the "astra_id" field.
func AstraIDEqualFold(v string) predicate.Step {
	return predicate.Step(sql.FieldEqualFold(FieldAstraID, v))
}

// AstraIDContainsFold applies the ContainsFold predicate on the "astra_id" field.
func AstraIDContainsFold(v string) predicate.Step {
	return predicate.Step(sql.FieldContainsFold(FieldAstraID, v))
}

// CommandEQ applies the EQ predicate on the "command" field.
func CommandEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldCommand, v))
}

// CommandNEQ applies the NEQ predicate on the "command" field.
func CommandNEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldNEQ(FieldCommand, v))
}

// CommandIn applies the In predicate on the "command" field.
func CommandIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldIn(FieldCommand, vs...))
}

// CommandNotIn applies the NotIn predicate on the "command" field.
func CommandNotIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldNotIn(FieldCommand, vs...))
}

// CommandGT applies the GT predicate on the "command" field.
func CommandGT(v string) predicate.Step {
	return predicate.Step(sql.FieldGT(FieldCommand, v))
}

// CommandGTE applies the GTE predicate on the "command" field.
func CommandGTE(v string) predicate.Step {
	return predicate.Step(sql.FieldGTE(FieldCommand, v))
}

// CommandLT applies the LT predicate on the "command" field.
func CommandLT(v string) predicate.Step {
	return predicate.Step(sql.FieldLT(FieldCommand, v))
}

// CommandLTE applies the LTE predicate on the "command" field.
func CommandLTE(v string) predicate.Step {
	return predicate.Step(sql.FieldLTE(FieldCommand, v))
}

// CommandContains applies the Contains predicate on the "command" field.
func CommandContains(v string) predicate.Step {
	return predicate.Step(sql.FieldContains(FieldCommand, v))
}

// CommandHasPrefix applies the HasPrefix predicate on the "command" field.
func CommandHasPrefix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasPrefix(FieldCommand, v))
}

// CommandHasSuffix applies the HasSuffix predicate on the "command" field.
func CommandHasSuffix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasSuffix(FieldCommand, v))
}

// CommandEqualFold applies the EqualFold predicate on the "command" field.
func CommandEqualFold(v string) predicate.Step {
	return predicate.Step(sql.FieldEqualFold(FieldCommand, v))
}

// CommandContainsFold applies the ContainsFold predicate on the "command" field.
func CommandContainsFold(v string) predicate.Step {
	return predicate.Step(sql.FieldContainsFold(FieldCommand, v))
}

// ArchEQ applies the EQ predicate on the "Arch" field.
func ArchEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldArch, v))
}

// ArchNEQ applies the NEQ predicate on the "Arch" field.
func ArchNEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldNEQ(FieldArch, v))
}

// ArchIn applies the In predicate on the "Arch" field.
func ArchIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldIn(FieldArch, vs...))
}

// ArchNotIn applies the NotIn predicate on the "Arch" field.
func ArchNotIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldNotIn(FieldArch, vs...))
}

// ArchGT applies the GT predicate on the "Arch" field.
func ArchGT(v string) predicate.Step {
	return predicate.Step(sql.FieldGT(FieldArch, v))
}

// ArchGTE applies the GTE predicate on the "Arch" field.
func ArchGTE(v string) predicate.Step {
	return predicate.Step(sql.FieldGTE(FieldArch, v))
}

// ArchLT applies the LT predicate on the "Arch" field.
func ArchLT(v string) predicate.Step {
	return predicate.Step(sql.FieldLT(FieldArch, v))
}

// ArchLTE applies the LTE predicate on the "Arch" field.
func ArchLTE(v string) predicate.Step {
	return predicate.Step(sql.FieldLTE(FieldArch, v))
}

// ArchContains applies the Contains predicate on the "Arch" field.
func ArchContains(v string) predicate.Step {
	return predicate.Step(sql.FieldContains(FieldArch, v))
}

// ArchHasPrefix applies the HasPrefix predicate on the "Arch" field.
func ArchHasPrefix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasPrefix(FieldArch, v))
}

// ArchHasSuffix applies the HasSuffix predicate on the "Arch" field.
func ArchHasSuffix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasSuffix(FieldArch, v))
}

// ArchEqualFold applies the EqualFold predicate on the "Arch" field.
func ArchEqualFold(v string) predicate.Step {
	return predicate.Step(sql.FieldEqualFold(FieldArch, v))
}

// ArchContainsFold applies the ContainsFold predicate on the "Arch" field.
func ArchContainsFold(v string) predicate.Step {
	return predicate.Step(sql.FieldContainsFold(FieldArch, v))
}

// TimestampEQ applies the EQ predicate on the "timestamp" field.
func TimestampEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldTimestamp, v))
}

// TimestampNEQ applies the NEQ predicate on the "timestamp" field.
func TimestampNEQ(v string) predicate.Step {
	return predicate.Step(sql.FieldNEQ(FieldTimestamp, v))
}

// TimestampIn applies the In predicate on the "timestamp" field.
func TimestampIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldIn(FieldTimestamp, vs...))
}

// TimestampNotIn applies the NotIn predicate on the "timestamp" field.
func TimestampNotIn(vs ...string) predicate.Step {
	return predicate.Step(sql.FieldNotIn(FieldTimestamp, vs...))
}

// TimestampGT applies the GT predicate on the "timestamp" field.
func TimestampGT(v string) predicate.Step {
	return predicate.Step(sql.FieldGT(FieldTimestamp, v))
}

// TimestampGTE applies the GTE predicate on the "timestamp" field.
func TimestampGTE(v string) predicate.Step {
	return predicate.Step(sql.FieldGTE(FieldTimestamp, v))
}

// TimestampLT applies the LT predicate on the "timestamp" field.
func TimestampLT(v string) predicate.Step {
	return predicate.Step(sql.FieldLT(FieldTimestamp, v))
}

// TimestampLTE applies the LTE predicate on the "timestamp" field.
func TimestampLTE(v string) predicate.Step {
	return predicate.Step(sql.FieldLTE(FieldTimestamp, v))
}

// TimestampContains applies the Contains predicate on the "timestamp" field.
func TimestampContains(v string) predicate.Step {
	return predicate.Step(sql.FieldContains(FieldTimestamp, v))
}

// TimestampHasPrefix applies the HasPrefix predicate on the "timestamp" field.
func TimestampHasPrefix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasPrefix(FieldTimestamp, v))
}

// TimestampHasSuffix applies the HasSuffix predicate on the "timestamp" field.
func TimestampHasSuffix(v string) predicate.Step {
	return predicate.Step(sql.FieldHasSuffix(FieldTimestamp, v))
}

// TimestampEqualFold applies the EqualFold predicate on the "timestamp" field.
func TimestampEqualFold(v string) predicate.Step {
	return predicate.Step(sql.FieldEqualFold(FieldTimestamp, v))
}

// TimestampContainsFold applies the ContainsFold predicate on the "timestamp" field.
func TimestampContainsFold(v string) predicate.Step {
	return predicate.Step(sql.FieldContainsFold(FieldTimestamp, v))
}

// MetadataIsNil applies the IsNil predicate on the "metadata" field.
func MetadataIsNil() predicate.Step {
	return predicate.Step(sql.FieldIsNull(FieldMetadata))
}

// MetadataNotNil applies the NotNil predicate on the "metadata" field.
func MetadataNotNil() predicate.Step {
	return predicate.Step(sql.FieldNotNull(FieldMetadata))
}

// CompletenessEQ applies the EQ predicate on the "completeness" field.
func CompletenessEQ(v Completeness) predicate.Step {
	return predicate.Step(sql.FieldEQ(FieldCompleteness, v))
}

// CompletenessNEQ applies the NEQ predicate on the "completeness" field.
func CompletenessNEQ(v Completeness) predicate.Step {
	return predicate.Step(sql.FieldNEQ(FieldCompleteness, v))
}

// CompletenessIn applies the In predicate on the "completeness" field.
func CompletenessIn(vs ...Completeness) predicate.Step {
	return predicate.Step(sql.FieldIn(FieldCompleteness, vs...))
}

// CompletenessNotIn applies the NotIn predicate on the "completeness" field.
func CompletenessNotIn(vs ...Completeness) predicate.Step {
	return predicate.Step(sql.FieldNotIn(FieldCompleteness, vs...))
}

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

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

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

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

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

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

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

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

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

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

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