// Code generated by ent, DO NOT EDIT. package ent import ( "context" "errors" "fmt" "time" "entgo.io/ent/dialect/sql" "entgo.io/ent/dialect/sql/sqlgraph" "entgo.io/ent/schema/field" "somegit.dev/csgowtf/csgowtfd/ent/match" "somegit.dev/csgowtf/csgowtfd/ent/matchplayer" "somegit.dev/csgowtf/csgowtfd/ent/player" "somegit.dev/csgowtf/csgowtfd/ent/predicate" ) // PlayerUpdate is the builder for updating Player entities. type PlayerUpdate struct { config hooks []Hook mutation *PlayerMutation modifiers []func(*sql.UpdateBuilder) } // Where appends a list predicates to the PlayerUpdate builder. func (_u *PlayerUpdate) Where(ps ...predicate.Player) *PlayerUpdate { _u.mutation.Where(ps...) return _u } // SetName sets the "name" field. func (_u *PlayerUpdate) SetName(v string) *PlayerUpdate { _u.mutation.SetName(v) return _u } // SetNillableName sets the "name" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableName(v *string) *PlayerUpdate { if v != nil { _u.SetName(*v) } return _u } // ClearName clears the value of the "name" field. func (_u *PlayerUpdate) ClearName() *PlayerUpdate { _u.mutation.ClearName() return _u } // SetAvatar sets the "avatar" field. func (_u *PlayerUpdate) SetAvatar(v string) *PlayerUpdate { _u.mutation.SetAvatar(v) return _u } // SetNillableAvatar sets the "avatar" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableAvatar(v *string) *PlayerUpdate { if v != nil { _u.SetAvatar(*v) } return _u } // ClearAvatar clears the value of the "avatar" field. func (_u *PlayerUpdate) ClearAvatar() *PlayerUpdate { _u.mutation.ClearAvatar() return _u } // SetVanityURL sets the "vanity_url" field. func (_u *PlayerUpdate) SetVanityURL(v string) *PlayerUpdate { _u.mutation.SetVanityURL(v) return _u } // SetNillableVanityURL sets the "vanity_url" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableVanityURL(v *string) *PlayerUpdate { if v != nil { _u.SetVanityURL(*v) } return _u } // ClearVanityURL clears the value of the "vanity_url" field. func (_u *PlayerUpdate) ClearVanityURL() *PlayerUpdate { _u.mutation.ClearVanityURL() return _u } // SetVanityURLReal sets the "vanity_url_real" field. func (_u *PlayerUpdate) SetVanityURLReal(v string) *PlayerUpdate { _u.mutation.SetVanityURLReal(v) return _u } // SetNillableVanityURLReal sets the "vanity_url_real" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableVanityURLReal(v *string) *PlayerUpdate { if v != nil { _u.SetVanityURLReal(*v) } return _u } // ClearVanityURLReal clears the value of the "vanity_url_real" field. func (_u *PlayerUpdate) ClearVanityURLReal() *PlayerUpdate { _u.mutation.ClearVanityURLReal() return _u } // SetVacDate sets the "vac_date" field. func (_u *PlayerUpdate) SetVacDate(v time.Time) *PlayerUpdate { _u.mutation.SetVacDate(v) return _u } // SetNillableVacDate sets the "vac_date" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableVacDate(v *time.Time) *PlayerUpdate { if v != nil { _u.SetVacDate(*v) } return _u } // ClearVacDate clears the value of the "vac_date" field. func (_u *PlayerUpdate) ClearVacDate() *PlayerUpdate { _u.mutation.ClearVacDate() return _u } // SetVacCount sets the "vac_count" field. func (_u *PlayerUpdate) SetVacCount(v int) *PlayerUpdate { _u.mutation.ResetVacCount() _u.mutation.SetVacCount(v) return _u } // SetNillableVacCount sets the "vac_count" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableVacCount(v *int) *PlayerUpdate { if v != nil { _u.SetVacCount(*v) } return _u } // AddVacCount adds value to the "vac_count" field. func (_u *PlayerUpdate) AddVacCount(v int) *PlayerUpdate { _u.mutation.AddVacCount(v) return _u } // ClearVacCount clears the value of the "vac_count" field. func (_u *PlayerUpdate) ClearVacCount() *PlayerUpdate { _u.mutation.ClearVacCount() return _u } // SetGameBanDate sets the "game_ban_date" field. func (_u *PlayerUpdate) SetGameBanDate(v time.Time) *PlayerUpdate { _u.mutation.SetGameBanDate(v) return _u } // SetNillableGameBanDate sets the "game_ban_date" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableGameBanDate(v *time.Time) *PlayerUpdate { if v != nil { _u.SetGameBanDate(*v) } return _u } // ClearGameBanDate clears the value of the "game_ban_date" field. func (_u *PlayerUpdate) ClearGameBanDate() *PlayerUpdate { _u.mutation.ClearGameBanDate() return _u } // SetGameBanCount sets the "game_ban_count" field. func (_u *PlayerUpdate) SetGameBanCount(v int) *PlayerUpdate { _u.mutation.ResetGameBanCount() _u.mutation.SetGameBanCount(v) return _u } // SetNillableGameBanCount sets the "game_ban_count" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableGameBanCount(v *int) *PlayerUpdate { if v != nil { _u.SetGameBanCount(*v) } return _u } // AddGameBanCount adds value to the "game_ban_count" field. func (_u *PlayerUpdate) AddGameBanCount(v int) *PlayerUpdate { _u.mutation.AddGameBanCount(v) return _u } // ClearGameBanCount clears the value of the "game_ban_count" field. func (_u *PlayerUpdate) ClearGameBanCount() *PlayerUpdate { _u.mutation.ClearGameBanCount() return _u } // SetSteamUpdated sets the "steam_updated" field. func (_u *PlayerUpdate) SetSteamUpdated(v time.Time) *PlayerUpdate { _u.mutation.SetSteamUpdated(v) return _u } // SetNillableSteamUpdated sets the "steam_updated" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableSteamUpdated(v *time.Time) *PlayerUpdate { if v != nil { _u.SetSteamUpdated(*v) } return _u } // SetSharecodeUpdated sets the "sharecode_updated" field. func (_u *PlayerUpdate) SetSharecodeUpdated(v time.Time) *PlayerUpdate { _u.mutation.SetSharecodeUpdated(v) return _u } // SetNillableSharecodeUpdated sets the "sharecode_updated" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableSharecodeUpdated(v *time.Time) *PlayerUpdate { if v != nil { _u.SetSharecodeUpdated(*v) } return _u } // ClearSharecodeUpdated clears the value of the "sharecode_updated" field. func (_u *PlayerUpdate) ClearSharecodeUpdated() *PlayerUpdate { _u.mutation.ClearSharecodeUpdated() return _u } // SetAuthCode sets the "auth_code" field. func (_u *PlayerUpdate) SetAuthCode(v string) *PlayerUpdate { _u.mutation.SetAuthCode(v) return _u } // SetNillableAuthCode sets the "auth_code" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableAuthCode(v *string) *PlayerUpdate { if v != nil { _u.SetAuthCode(*v) } return _u } // ClearAuthCode clears the value of the "auth_code" field. func (_u *PlayerUpdate) ClearAuthCode() *PlayerUpdate { _u.mutation.ClearAuthCode() return _u } // SetProfileCreated sets the "profile_created" field. func (_u *PlayerUpdate) SetProfileCreated(v time.Time) *PlayerUpdate { _u.mutation.SetProfileCreated(v) return _u } // SetNillableProfileCreated sets the "profile_created" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableProfileCreated(v *time.Time) *PlayerUpdate { if v != nil { _u.SetProfileCreated(*v) } return _u } // ClearProfileCreated clears the value of the "profile_created" field. func (_u *PlayerUpdate) ClearProfileCreated() *PlayerUpdate { _u.mutation.ClearProfileCreated() return _u } // SetOldestSharecodeSeen sets the "oldest_sharecode_seen" field. func (_u *PlayerUpdate) SetOldestSharecodeSeen(v string) *PlayerUpdate { _u.mutation.SetOldestSharecodeSeen(v) return _u } // SetNillableOldestSharecodeSeen sets the "oldest_sharecode_seen" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableOldestSharecodeSeen(v *string) *PlayerUpdate { if v != nil { _u.SetOldestSharecodeSeen(*v) } return _u } // ClearOldestSharecodeSeen clears the value of the "oldest_sharecode_seen" field. func (_u *PlayerUpdate) ClearOldestSharecodeSeen() *PlayerUpdate { _u.mutation.ClearOldestSharecodeSeen() return _u } // SetWins sets the "wins" field. func (_u *PlayerUpdate) SetWins(v int) *PlayerUpdate { _u.mutation.ResetWins() _u.mutation.SetWins(v) return _u } // SetNillableWins sets the "wins" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableWins(v *int) *PlayerUpdate { if v != nil { _u.SetWins(*v) } return _u } // AddWins adds value to the "wins" field. func (_u *PlayerUpdate) AddWins(v int) *PlayerUpdate { _u.mutation.AddWins(v) return _u } // ClearWins clears the value of the "wins" field. func (_u *PlayerUpdate) ClearWins() *PlayerUpdate { _u.mutation.ClearWins() return _u } // SetLooses sets the "looses" field. func (_u *PlayerUpdate) SetLooses(v int) *PlayerUpdate { _u.mutation.ResetLooses() _u.mutation.SetLooses(v) return _u } // SetNillableLooses sets the "looses" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableLooses(v *int) *PlayerUpdate { if v != nil { _u.SetLooses(*v) } return _u } // AddLooses adds value to the "looses" field. func (_u *PlayerUpdate) AddLooses(v int) *PlayerUpdate { _u.mutation.AddLooses(v) return _u } // ClearLooses clears the value of the "looses" field. func (_u *PlayerUpdate) ClearLooses() *PlayerUpdate { _u.mutation.ClearLooses() return _u } // SetTies sets the "ties" field. func (_u *PlayerUpdate) SetTies(v int) *PlayerUpdate { _u.mutation.ResetTies() _u.mutation.SetTies(v) return _u } // SetNillableTies sets the "ties" field if the given value is not nil. func (_u *PlayerUpdate) SetNillableTies(v *int) *PlayerUpdate { if v != nil { _u.SetTies(*v) } return _u } // AddTies adds value to the "ties" field. func (_u *PlayerUpdate) AddTies(v int) *PlayerUpdate { _u.mutation.AddTies(v) return _u } // ClearTies clears the value of the "ties" field. func (_u *PlayerUpdate) ClearTies() *PlayerUpdate { _u.mutation.ClearTies() return _u } // AddStatIDs adds the "stats" edge to the MatchPlayer entity by IDs. func (_u *PlayerUpdate) AddStatIDs(ids ...int) *PlayerUpdate { _u.mutation.AddStatIDs(ids...) return _u } // AddStats adds the "stats" edges to the MatchPlayer entity. func (_u *PlayerUpdate) AddStats(v ...*MatchPlayer) *PlayerUpdate { ids := make([]int, len(v)) for i := range v { ids[i] = v[i].ID } return _u.AddStatIDs(ids...) } // AddMatchIDs adds the "matches" edge to the Match entity by IDs. func (_u *PlayerUpdate) AddMatchIDs(ids ...uint64) *PlayerUpdate { _u.mutation.AddMatchIDs(ids...) return _u } // AddMatches adds the "matches" edges to the Match entity. func (_u *PlayerUpdate) AddMatches(v ...*Match) *PlayerUpdate { ids := make([]uint64, len(v)) for i := range v { ids[i] = v[i].ID } return _u.AddMatchIDs(ids...) } // Mutation returns the PlayerMutation object of the builder. func (_u *PlayerUpdate) Mutation() *PlayerMutation { return _u.mutation } // ClearStats clears all "stats" edges to the MatchPlayer entity. func (_u *PlayerUpdate) ClearStats() *PlayerUpdate { _u.mutation.ClearStats() return _u } // RemoveStatIDs removes the "stats" edge to MatchPlayer entities by IDs. func (_u *PlayerUpdate) RemoveStatIDs(ids ...int) *PlayerUpdate { _u.mutation.RemoveStatIDs(ids...) return _u } // RemoveStats removes "stats" edges to MatchPlayer entities. func (_u *PlayerUpdate) RemoveStats(v ...*MatchPlayer) *PlayerUpdate { ids := make([]int, len(v)) for i := range v { ids[i] = v[i].ID } return _u.RemoveStatIDs(ids...) } // ClearMatches clears all "matches" edges to the Match entity. func (_u *PlayerUpdate) ClearMatches() *PlayerUpdate { _u.mutation.ClearMatches() return _u } // RemoveMatchIDs removes the "matches" edge to Match entities by IDs. func (_u *PlayerUpdate) RemoveMatchIDs(ids ...uint64) *PlayerUpdate { _u.mutation.RemoveMatchIDs(ids...) return _u } // RemoveMatches removes "matches" edges to Match entities. func (_u *PlayerUpdate) RemoveMatches(v ...*Match) *PlayerUpdate { ids := make([]uint64, len(v)) for i := range v { ids[i] = v[i].ID } return _u.RemoveMatchIDs(ids...) } // Save executes the query and returns the number of nodes affected by the update operation. func (_u *PlayerUpdate) Save(ctx context.Context) (int, error) { return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } // SaveX is like Save, but panics if an error occurs. func (_u *PlayerUpdate) SaveX(ctx context.Context) int { affected, err := _u.Save(ctx) if err != nil { panic(err) } return affected } // Exec executes the query. func (_u *PlayerUpdate) Exec(ctx context.Context) error { _, err := _u.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_u *PlayerUpdate) ExecX(ctx context.Context) { if err := _u.Exec(ctx); err != nil { panic(err) } } // Modify adds a statement modifier for attaching custom logic to the UPDATE statement. func (_u *PlayerUpdate) Modify(modifiers ...func(u *sql.UpdateBuilder)) *PlayerUpdate { _u.modifiers = append(_u.modifiers, modifiers...) return _u } func (_u *PlayerUpdate) sqlSave(ctx context.Context) (_node int, err error) { _spec := sqlgraph.NewUpdateSpec(player.Table, player.Columns, sqlgraph.NewFieldSpec(player.FieldID, field.TypeUint64)) if ps := _u.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := _u.mutation.Name(); ok { _spec.SetField(player.FieldName, field.TypeString, value) } if _u.mutation.NameCleared() { _spec.ClearField(player.FieldName, field.TypeString) } if value, ok := _u.mutation.Avatar(); ok { _spec.SetField(player.FieldAvatar, field.TypeString, value) } if _u.mutation.AvatarCleared() { _spec.ClearField(player.FieldAvatar, field.TypeString) } if value, ok := _u.mutation.VanityURL(); ok { _spec.SetField(player.FieldVanityURL, field.TypeString, value) } if _u.mutation.VanityURLCleared() { _spec.ClearField(player.FieldVanityURL, field.TypeString) } if value, ok := _u.mutation.VanityURLReal(); ok { _spec.SetField(player.FieldVanityURLReal, field.TypeString, value) } if _u.mutation.VanityURLRealCleared() { _spec.ClearField(player.FieldVanityURLReal, field.TypeString) } if value, ok := _u.mutation.VacDate(); ok { _spec.SetField(player.FieldVacDate, field.TypeTime, value) } if _u.mutation.VacDateCleared() { _spec.ClearField(player.FieldVacDate, field.TypeTime) } if value, ok := _u.mutation.VacCount(); ok { _spec.SetField(player.FieldVacCount, field.TypeInt, value) } if value, ok := _u.mutation.AddedVacCount(); ok { _spec.AddField(player.FieldVacCount, field.TypeInt, value) } if _u.mutation.VacCountCleared() { _spec.ClearField(player.FieldVacCount, field.TypeInt) } if value, ok := _u.mutation.GameBanDate(); ok { _spec.SetField(player.FieldGameBanDate, field.TypeTime, value) } if _u.mutation.GameBanDateCleared() { _spec.ClearField(player.FieldGameBanDate, field.TypeTime) } if value, ok := _u.mutation.GameBanCount(); ok { _spec.SetField(player.FieldGameBanCount, field.TypeInt, value) } if value, ok := _u.mutation.AddedGameBanCount(); ok { _spec.AddField(player.FieldGameBanCount, field.TypeInt, value) } if _u.mutation.GameBanCountCleared() { _spec.ClearField(player.FieldGameBanCount, field.TypeInt) } if value, ok := _u.mutation.SteamUpdated(); ok { _spec.SetField(player.FieldSteamUpdated, field.TypeTime, value) } if value, ok := _u.mutation.SharecodeUpdated(); ok { _spec.SetField(player.FieldSharecodeUpdated, field.TypeTime, value) } if _u.mutation.SharecodeUpdatedCleared() { _spec.ClearField(player.FieldSharecodeUpdated, field.TypeTime) } if value, ok := _u.mutation.AuthCode(); ok { _spec.SetField(player.FieldAuthCode, field.TypeString, value) } if _u.mutation.AuthCodeCleared() { _spec.ClearField(player.FieldAuthCode, field.TypeString) } if value, ok := _u.mutation.ProfileCreated(); ok { _spec.SetField(player.FieldProfileCreated, field.TypeTime, value) } if _u.mutation.ProfileCreatedCleared() { _spec.ClearField(player.FieldProfileCreated, field.TypeTime) } if value, ok := _u.mutation.OldestSharecodeSeen(); ok { _spec.SetField(player.FieldOldestSharecodeSeen, field.TypeString, value) } if _u.mutation.OldestSharecodeSeenCleared() { _spec.ClearField(player.FieldOldestSharecodeSeen, field.TypeString) } if value, ok := _u.mutation.Wins(); ok { _spec.SetField(player.FieldWins, field.TypeInt, value) } if value, ok := _u.mutation.AddedWins(); ok { _spec.AddField(player.FieldWins, field.TypeInt, value) } if _u.mutation.WinsCleared() { _spec.ClearField(player.FieldWins, field.TypeInt) } if value, ok := _u.mutation.Looses(); ok { _spec.SetField(player.FieldLooses, field.TypeInt, value) } if value, ok := _u.mutation.AddedLooses(); ok { _spec.AddField(player.FieldLooses, field.TypeInt, value) } if _u.mutation.LoosesCleared() { _spec.ClearField(player.FieldLooses, field.TypeInt) } if value, ok := _u.mutation.Ties(); ok { _spec.SetField(player.FieldTies, field.TypeInt, value) } if value, ok := _u.mutation.AddedTies(); ok { _spec.AddField(player.FieldTies, field.TypeInt, value) } if _u.mutation.TiesCleared() { _spec.ClearField(player.FieldTies, field.TypeInt) } if _u.mutation.StatsCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.RemovedStatsIDs(); len(nodes) > 0 && !_u.mutation.StatsCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.StatsIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } if _u.mutation.MatchesCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.RemovedMatchesIDs(); len(nodes) > 0 && !_u.mutation.MatchesCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.MatchesIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } _spec.AddModifiers(_u.modifiers...) if _node, err = sqlgraph.UpdateNodes(ctx, _u.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{player.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return 0, err } _u.mutation.done = true return _node, nil } // PlayerUpdateOne is the builder for updating a single Player entity. type PlayerUpdateOne struct { config fields []string hooks []Hook mutation *PlayerMutation modifiers []func(*sql.UpdateBuilder) } // SetName sets the "name" field. func (_u *PlayerUpdateOne) SetName(v string) *PlayerUpdateOne { _u.mutation.SetName(v) return _u } // SetNillableName sets the "name" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableName(v *string) *PlayerUpdateOne { if v != nil { _u.SetName(*v) } return _u } // ClearName clears the value of the "name" field. func (_u *PlayerUpdateOne) ClearName() *PlayerUpdateOne { _u.mutation.ClearName() return _u } // SetAvatar sets the "avatar" field. func (_u *PlayerUpdateOne) SetAvatar(v string) *PlayerUpdateOne { _u.mutation.SetAvatar(v) return _u } // SetNillableAvatar sets the "avatar" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableAvatar(v *string) *PlayerUpdateOne { if v != nil { _u.SetAvatar(*v) } return _u } // ClearAvatar clears the value of the "avatar" field. func (_u *PlayerUpdateOne) ClearAvatar() *PlayerUpdateOne { _u.mutation.ClearAvatar() return _u } // SetVanityURL sets the "vanity_url" field. func (_u *PlayerUpdateOne) SetVanityURL(v string) *PlayerUpdateOne { _u.mutation.SetVanityURL(v) return _u } // SetNillableVanityURL sets the "vanity_url" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableVanityURL(v *string) *PlayerUpdateOne { if v != nil { _u.SetVanityURL(*v) } return _u } // ClearVanityURL clears the value of the "vanity_url" field. func (_u *PlayerUpdateOne) ClearVanityURL() *PlayerUpdateOne { _u.mutation.ClearVanityURL() return _u } // SetVanityURLReal sets the "vanity_url_real" field. func (_u *PlayerUpdateOne) SetVanityURLReal(v string) *PlayerUpdateOne { _u.mutation.SetVanityURLReal(v) return _u } // SetNillableVanityURLReal sets the "vanity_url_real" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableVanityURLReal(v *string) *PlayerUpdateOne { if v != nil { _u.SetVanityURLReal(*v) } return _u } // ClearVanityURLReal clears the value of the "vanity_url_real" field. func (_u *PlayerUpdateOne) ClearVanityURLReal() *PlayerUpdateOne { _u.mutation.ClearVanityURLReal() return _u } // SetVacDate sets the "vac_date" field. func (_u *PlayerUpdateOne) SetVacDate(v time.Time) *PlayerUpdateOne { _u.mutation.SetVacDate(v) return _u } // SetNillableVacDate sets the "vac_date" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableVacDate(v *time.Time) *PlayerUpdateOne { if v != nil { _u.SetVacDate(*v) } return _u } // ClearVacDate clears the value of the "vac_date" field. func (_u *PlayerUpdateOne) ClearVacDate() *PlayerUpdateOne { _u.mutation.ClearVacDate() return _u } // SetVacCount sets the "vac_count" field. func (_u *PlayerUpdateOne) SetVacCount(v int) *PlayerUpdateOne { _u.mutation.ResetVacCount() _u.mutation.SetVacCount(v) return _u } // SetNillableVacCount sets the "vac_count" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableVacCount(v *int) *PlayerUpdateOne { if v != nil { _u.SetVacCount(*v) } return _u } // AddVacCount adds value to the "vac_count" field. func (_u *PlayerUpdateOne) AddVacCount(v int) *PlayerUpdateOne { _u.mutation.AddVacCount(v) return _u } // ClearVacCount clears the value of the "vac_count" field. func (_u *PlayerUpdateOne) ClearVacCount() *PlayerUpdateOne { _u.mutation.ClearVacCount() return _u } // SetGameBanDate sets the "game_ban_date" field. func (_u *PlayerUpdateOne) SetGameBanDate(v time.Time) *PlayerUpdateOne { _u.mutation.SetGameBanDate(v) return _u } // SetNillableGameBanDate sets the "game_ban_date" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableGameBanDate(v *time.Time) *PlayerUpdateOne { if v != nil { _u.SetGameBanDate(*v) } return _u } // ClearGameBanDate clears the value of the "game_ban_date" field. func (_u *PlayerUpdateOne) ClearGameBanDate() *PlayerUpdateOne { _u.mutation.ClearGameBanDate() return _u } // SetGameBanCount sets the "game_ban_count" field. func (_u *PlayerUpdateOne) SetGameBanCount(v int) *PlayerUpdateOne { _u.mutation.ResetGameBanCount() _u.mutation.SetGameBanCount(v) return _u } // SetNillableGameBanCount sets the "game_ban_count" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableGameBanCount(v *int) *PlayerUpdateOne { if v != nil { _u.SetGameBanCount(*v) } return _u } // AddGameBanCount adds value to the "game_ban_count" field. func (_u *PlayerUpdateOne) AddGameBanCount(v int) *PlayerUpdateOne { _u.mutation.AddGameBanCount(v) return _u } // ClearGameBanCount clears the value of the "game_ban_count" field. func (_u *PlayerUpdateOne) ClearGameBanCount() *PlayerUpdateOne { _u.mutation.ClearGameBanCount() return _u } // SetSteamUpdated sets the "steam_updated" field. func (_u *PlayerUpdateOne) SetSteamUpdated(v time.Time) *PlayerUpdateOne { _u.mutation.SetSteamUpdated(v) return _u } // SetNillableSteamUpdated sets the "steam_updated" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableSteamUpdated(v *time.Time) *PlayerUpdateOne { if v != nil { _u.SetSteamUpdated(*v) } return _u } // SetSharecodeUpdated sets the "sharecode_updated" field. func (_u *PlayerUpdateOne) SetSharecodeUpdated(v time.Time) *PlayerUpdateOne { _u.mutation.SetSharecodeUpdated(v) return _u } // SetNillableSharecodeUpdated sets the "sharecode_updated" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableSharecodeUpdated(v *time.Time) *PlayerUpdateOne { if v != nil { _u.SetSharecodeUpdated(*v) } return _u } // ClearSharecodeUpdated clears the value of the "sharecode_updated" field. func (_u *PlayerUpdateOne) ClearSharecodeUpdated() *PlayerUpdateOne { _u.mutation.ClearSharecodeUpdated() return _u } // SetAuthCode sets the "auth_code" field. func (_u *PlayerUpdateOne) SetAuthCode(v string) *PlayerUpdateOne { _u.mutation.SetAuthCode(v) return _u } // SetNillableAuthCode sets the "auth_code" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableAuthCode(v *string) *PlayerUpdateOne { if v != nil { _u.SetAuthCode(*v) } return _u } // ClearAuthCode clears the value of the "auth_code" field. func (_u *PlayerUpdateOne) ClearAuthCode() *PlayerUpdateOne { _u.mutation.ClearAuthCode() return _u } // SetProfileCreated sets the "profile_created" field. func (_u *PlayerUpdateOne) SetProfileCreated(v time.Time) *PlayerUpdateOne { _u.mutation.SetProfileCreated(v) return _u } // SetNillableProfileCreated sets the "profile_created" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableProfileCreated(v *time.Time) *PlayerUpdateOne { if v != nil { _u.SetProfileCreated(*v) } return _u } // ClearProfileCreated clears the value of the "profile_created" field. func (_u *PlayerUpdateOne) ClearProfileCreated() *PlayerUpdateOne { _u.mutation.ClearProfileCreated() return _u } // SetOldestSharecodeSeen sets the "oldest_sharecode_seen" field. func (_u *PlayerUpdateOne) SetOldestSharecodeSeen(v string) *PlayerUpdateOne { _u.mutation.SetOldestSharecodeSeen(v) return _u } // SetNillableOldestSharecodeSeen sets the "oldest_sharecode_seen" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableOldestSharecodeSeen(v *string) *PlayerUpdateOne { if v != nil { _u.SetOldestSharecodeSeen(*v) } return _u } // ClearOldestSharecodeSeen clears the value of the "oldest_sharecode_seen" field. func (_u *PlayerUpdateOne) ClearOldestSharecodeSeen() *PlayerUpdateOne { _u.mutation.ClearOldestSharecodeSeen() return _u } // SetWins sets the "wins" field. func (_u *PlayerUpdateOne) SetWins(v int) *PlayerUpdateOne { _u.mutation.ResetWins() _u.mutation.SetWins(v) return _u } // SetNillableWins sets the "wins" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableWins(v *int) *PlayerUpdateOne { if v != nil { _u.SetWins(*v) } return _u } // AddWins adds value to the "wins" field. func (_u *PlayerUpdateOne) AddWins(v int) *PlayerUpdateOne { _u.mutation.AddWins(v) return _u } // ClearWins clears the value of the "wins" field. func (_u *PlayerUpdateOne) ClearWins() *PlayerUpdateOne { _u.mutation.ClearWins() return _u } // SetLooses sets the "looses" field. func (_u *PlayerUpdateOne) SetLooses(v int) *PlayerUpdateOne { _u.mutation.ResetLooses() _u.mutation.SetLooses(v) return _u } // SetNillableLooses sets the "looses" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableLooses(v *int) *PlayerUpdateOne { if v != nil { _u.SetLooses(*v) } return _u } // AddLooses adds value to the "looses" field. func (_u *PlayerUpdateOne) AddLooses(v int) *PlayerUpdateOne { _u.mutation.AddLooses(v) return _u } // ClearLooses clears the value of the "looses" field. func (_u *PlayerUpdateOne) ClearLooses() *PlayerUpdateOne { _u.mutation.ClearLooses() return _u } // SetTies sets the "ties" field. func (_u *PlayerUpdateOne) SetTies(v int) *PlayerUpdateOne { _u.mutation.ResetTies() _u.mutation.SetTies(v) return _u } // SetNillableTies sets the "ties" field if the given value is not nil. func (_u *PlayerUpdateOne) SetNillableTies(v *int) *PlayerUpdateOne { if v != nil { _u.SetTies(*v) } return _u } // AddTies adds value to the "ties" field. func (_u *PlayerUpdateOne) AddTies(v int) *PlayerUpdateOne { _u.mutation.AddTies(v) return _u } // ClearTies clears the value of the "ties" field. func (_u *PlayerUpdateOne) ClearTies() *PlayerUpdateOne { _u.mutation.ClearTies() return _u } // AddStatIDs adds the "stats" edge to the MatchPlayer entity by IDs. func (_u *PlayerUpdateOne) AddStatIDs(ids ...int) *PlayerUpdateOne { _u.mutation.AddStatIDs(ids...) return _u } // AddStats adds the "stats" edges to the MatchPlayer entity. func (_u *PlayerUpdateOne) AddStats(v ...*MatchPlayer) *PlayerUpdateOne { ids := make([]int, len(v)) for i := range v { ids[i] = v[i].ID } return _u.AddStatIDs(ids...) } // AddMatchIDs adds the "matches" edge to the Match entity by IDs. func (_u *PlayerUpdateOne) AddMatchIDs(ids ...uint64) *PlayerUpdateOne { _u.mutation.AddMatchIDs(ids...) return _u } // AddMatches adds the "matches" edges to the Match entity. func (_u *PlayerUpdateOne) AddMatches(v ...*Match) *PlayerUpdateOne { ids := make([]uint64, len(v)) for i := range v { ids[i] = v[i].ID } return _u.AddMatchIDs(ids...) } // Mutation returns the PlayerMutation object of the builder. func (_u *PlayerUpdateOne) Mutation() *PlayerMutation { return _u.mutation } // ClearStats clears all "stats" edges to the MatchPlayer entity. func (_u *PlayerUpdateOne) ClearStats() *PlayerUpdateOne { _u.mutation.ClearStats() return _u } // RemoveStatIDs removes the "stats" edge to MatchPlayer entities by IDs. func (_u *PlayerUpdateOne) RemoveStatIDs(ids ...int) *PlayerUpdateOne { _u.mutation.RemoveStatIDs(ids...) return _u } // RemoveStats removes "stats" edges to MatchPlayer entities. func (_u *PlayerUpdateOne) RemoveStats(v ...*MatchPlayer) *PlayerUpdateOne { ids := make([]int, len(v)) for i := range v { ids[i] = v[i].ID } return _u.RemoveStatIDs(ids...) } // ClearMatches clears all "matches" edges to the Match entity. func (_u *PlayerUpdateOne) ClearMatches() *PlayerUpdateOne { _u.mutation.ClearMatches() return _u } // RemoveMatchIDs removes the "matches" edge to Match entities by IDs. func (_u *PlayerUpdateOne) RemoveMatchIDs(ids ...uint64) *PlayerUpdateOne { _u.mutation.RemoveMatchIDs(ids...) return _u } // RemoveMatches removes "matches" edges to Match entities. func (_u *PlayerUpdateOne) RemoveMatches(v ...*Match) *PlayerUpdateOne { ids := make([]uint64, len(v)) for i := range v { ids[i] = v[i].ID } return _u.RemoveMatchIDs(ids...) } // Where appends a list predicates to the PlayerUpdate builder. func (_u *PlayerUpdateOne) Where(ps ...predicate.Player) *PlayerUpdateOne { _u.mutation.Where(ps...) return _u } // Select allows selecting one or more fields (columns) of the returned entity. // The default is selecting all fields defined in the entity schema. func (_u *PlayerUpdateOne) Select(field string, fields ...string) *PlayerUpdateOne { _u.fields = append([]string{field}, fields...) return _u } // Save executes the query and returns the updated Player entity. func (_u *PlayerUpdateOne) Save(ctx context.Context) (*Player, error) { return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks) } // SaveX is like Save, but panics if an error occurs. func (_u *PlayerUpdateOne) SaveX(ctx context.Context) *Player { node, err := _u.Save(ctx) if err != nil { panic(err) } return node } // Exec executes the query on the entity. func (_u *PlayerUpdateOne) Exec(ctx context.Context) error { _, err := _u.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_u *PlayerUpdateOne) ExecX(ctx context.Context) { if err := _u.Exec(ctx); err != nil { panic(err) } } // Modify adds a statement modifier for attaching custom logic to the UPDATE statement. func (_u *PlayerUpdateOne) Modify(modifiers ...func(u *sql.UpdateBuilder)) *PlayerUpdateOne { _u.modifiers = append(_u.modifiers, modifiers...) return _u } func (_u *PlayerUpdateOne) sqlSave(ctx context.Context) (_node *Player, err error) { _spec := sqlgraph.NewUpdateSpec(player.Table, player.Columns, sqlgraph.NewFieldSpec(player.FieldID, field.TypeUint64)) id, ok := _u.mutation.ID() if !ok { return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "Player.id" for update`)} } _spec.Node.ID.Value = id if fields := _u.fields; len(fields) > 0 { _spec.Node.Columns = make([]string, 0, len(fields)) _spec.Node.Columns = append(_spec.Node.Columns, player.FieldID) for _, f := range fields { if !player.ValidColumn(f) { return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)} } if f != player.FieldID { _spec.Node.Columns = append(_spec.Node.Columns, f) } } } if ps := _u.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := _u.mutation.Name(); ok { _spec.SetField(player.FieldName, field.TypeString, value) } if _u.mutation.NameCleared() { _spec.ClearField(player.FieldName, field.TypeString) } if value, ok := _u.mutation.Avatar(); ok { _spec.SetField(player.FieldAvatar, field.TypeString, value) } if _u.mutation.AvatarCleared() { _spec.ClearField(player.FieldAvatar, field.TypeString) } if value, ok := _u.mutation.VanityURL(); ok { _spec.SetField(player.FieldVanityURL, field.TypeString, value) } if _u.mutation.VanityURLCleared() { _spec.ClearField(player.FieldVanityURL, field.TypeString) } if value, ok := _u.mutation.VanityURLReal(); ok { _spec.SetField(player.FieldVanityURLReal, field.TypeString, value) } if _u.mutation.VanityURLRealCleared() { _spec.ClearField(player.FieldVanityURLReal, field.TypeString) } if value, ok := _u.mutation.VacDate(); ok { _spec.SetField(player.FieldVacDate, field.TypeTime, value) } if _u.mutation.VacDateCleared() { _spec.ClearField(player.FieldVacDate, field.TypeTime) } if value, ok := _u.mutation.VacCount(); ok { _spec.SetField(player.FieldVacCount, field.TypeInt, value) } if value, ok := _u.mutation.AddedVacCount(); ok { _spec.AddField(player.FieldVacCount, field.TypeInt, value) } if _u.mutation.VacCountCleared() { _spec.ClearField(player.FieldVacCount, field.TypeInt) } if value, ok := _u.mutation.GameBanDate(); ok { _spec.SetField(player.FieldGameBanDate, field.TypeTime, value) } if _u.mutation.GameBanDateCleared() { _spec.ClearField(player.FieldGameBanDate, field.TypeTime) } if value, ok := _u.mutation.GameBanCount(); ok { _spec.SetField(player.FieldGameBanCount, field.TypeInt, value) } if value, ok := _u.mutation.AddedGameBanCount(); ok { _spec.AddField(player.FieldGameBanCount, field.TypeInt, value) } if _u.mutation.GameBanCountCleared() { _spec.ClearField(player.FieldGameBanCount, field.TypeInt) } if value, ok := _u.mutation.SteamUpdated(); ok { _spec.SetField(player.FieldSteamUpdated, field.TypeTime, value) } if value, ok := _u.mutation.SharecodeUpdated(); ok { _spec.SetField(player.FieldSharecodeUpdated, field.TypeTime, value) } if _u.mutation.SharecodeUpdatedCleared() { _spec.ClearField(player.FieldSharecodeUpdated, field.TypeTime) } if value, ok := _u.mutation.AuthCode(); ok { _spec.SetField(player.FieldAuthCode, field.TypeString, value) } if _u.mutation.AuthCodeCleared() { _spec.ClearField(player.FieldAuthCode, field.TypeString) } if value, ok := _u.mutation.ProfileCreated(); ok { _spec.SetField(player.FieldProfileCreated, field.TypeTime, value) } if _u.mutation.ProfileCreatedCleared() { _spec.ClearField(player.FieldProfileCreated, field.TypeTime) } if value, ok := _u.mutation.OldestSharecodeSeen(); ok { _spec.SetField(player.FieldOldestSharecodeSeen, field.TypeString, value) } if _u.mutation.OldestSharecodeSeenCleared() { _spec.ClearField(player.FieldOldestSharecodeSeen, field.TypeString) } if value, ok := _u.mutation.Wins(); ok { _spec.SetField(player.FieldWins, field.TypeInt, value) } if value, ok := _u.mutation.AddedWins(); ok { _spec.AddField(player.FieldWins, field.TypeInt, value) } if _u.mutation.WinsCleared() { _spec.ClearField(player.FieldWins, field.TypeInt) } if value, ok := _u.mutation.Looses(); ok { _spec.SetField(player.FieldLooses, field.TypeInt, value) } if value, ok := _u.mutation.AddedLooses(); ok { _spec.AddField(player.FieldLooses, field.TypeInt, value) } if _u.mutation.LoosesCleared() { _spec.ClearField(player.FieldLooses, field.TypeInt) } if value, ok := _u.mutation.Ties(); ok { _spec.SetField(player.FieldTies, field.TypeInt, value) } if value, ok := _u.mutation.AddedTies(); ok { _spec.AddField(player.FieldTies, field.TypeInt, value) } if _u.mutation.TiesCleared() { _spec.ClearField(player.FieldTies, field.TypeInt) } if _u.mutation.StatsCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.RemovedStatsIDs(); len(nodes) > 0 && !_u.mutation.StatsCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.StatsIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.O2M, Inverse: false, Table: player.StatsTable, Columns: []string{player.StatsColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(matchplayer.FieldID, field.TypeInt), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } if _u.mutation.MatchesCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.RemovedMatchesIDs(); len(nodes) > 0 && !_u.mutation.MatchesCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := _u.mutation.MatchesIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2M, Inverse: false, Table: player.MatchesTable, Columns: player.MatchesPrimaryKey, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(match.FieldID, field.TypeUint64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } _spec.AddModifiers(_u.modifiers...) _node = &Player{config: _u.config} _spec.Assign = _node.assignValues _spec.ScanValues = _node.scanValues if err = sqlgraph.UpdateNode(ctx, _u.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{player.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return nil, err } _u.mutation.done = true return _node, nil }