SYMBOL INDEX (1607 symbols across 159 files) FILE: association.go type Association (line 14) | type Association struct method Unscoped (line 42) | func (association *Association) Unscoped() *Association { method Find (line 51) | func (association *Association) Find(out interface{}, conds ...interfa... method Append (line 58) | func (association *Association) Append(values ...interface{}) error { method Replace (line 75) | func (association *Association) Replace(values ...interface{}) error { method Delete (line 199) | func (association *Association) Delete(values ...interface{}) error { method Clear (line 367) | func (association *Association) Clear() error { method Count (line 371) | func (association *Association) Count() (count int64) { method saveAssociation (line 384) | func (association *Association) saveAssociation(clear bool, values ...... method buildCondition (line 608) | func (association *Association) buildCondition() *DB { method Association (line 21) | func (db *DB) Association(column string) *Association { type assignBack (line 378) | type assignBack struct function expandValues (line 638) | func expandValues(values ...any) (results []any) { FILE: callbacks.go function initializeCallbacks (line 15) | func initializeCallbacks(db *DB) *callbacks { type callbacks (line 29) | type callbacks struct method Create (line 51) | func (cs *callbacks) Create() *processor { method Query (line 55) | func (cs *callbacks) Query() *processor { method Update (line 59) | func (cs *callbacks) Update() *processor { method Delete (line 63) | func (cs *callbacks) Delete() *processor { method Row (line 67) | func (cs *callbacks) Row() *processor { method Raw (line 71) | func (cs *callbacks) Raw() *processor { type processor (line 33) | type processor struct method Execute (line 75) | func (p *processor) Execute(db *DB) *DB { method Get (line 161) | func (p *processor) Get(name string) func(*DB) { method Before (line 170) | func (p *processor) Before(name string) *callback { method After (line 174) | func (p *processor) After(name string) *callback { method Match (line 178) | func (p *processor) Match(fc func(*DB) bool) *callback { method Register (line 182) | func (p *processor) Register(name string, fn func(*DB)) error { method Remove (line 186) | func (p *processor) Remove(name string) error { method Replace (line 190) | func (p *processor) Replace(name string, fn func(*DB)) error { method compile (line 194) | func (p *processor) compile() (err error) { type callback (line 40) | type callback struct method Before (line 217) | func (c *callback) Before(name string) *callback { method After (line 222) | func (c *callback) After(name string) *callback { method Register (line 227) | func (c *callback) Register(name string, fn func(*DB)) error { method Remove (line 234) | func (c *callback) Remove(name string) error { method Replace (line 242) | func (c *callback) Replace(name string, fn func(*DB)) error { function getRIndex (line 252) | func getRIndex(strs []string, str string) int { function sortCallbacks (line 261) | func sortCallbacks(cs []*callback) (fns []func(*DB), err error) { function removeCallbacks (line 357) | func removeCallbacks(cs []*callback, nameMap map[string]bool) []*callback { FILE: callbacks/associations.go function SaveBeforeAssociations (line 13) | func SaveBeforeAssociations(create bool) func(db *gorm.DB) { function SaveAfterAssociations (line 110) | func SaveAfterAssociations(create bool) func(db *gorm.DB) { function onConflictOption (line 360) | func onConflictOption(stmt *gorm.Statement, s *schema.Schema, defaultUpd... function saveAssociations (line 378) | func saveAssociations(db *gorm.DB, rel *schema.Relationship, rValues ref... function checkAssociationsSaved (line 439) | func checkAssociationsSaved(db *gorm.DB, values reflect.Value) bool { FILE: callbacks/callbacks.go type Config (line 14) | type Config struct function RegisterDefaultCallbacks (line 22) | func RegisterDefaultCallbacks(db *gorm.DB, config *Config) { FILE: callbacks/callmethod.go function callMethod (line 9) | func callMethod(db *gorm.DB, fc func(value interface{}, tx *gorm.DB) boo... FILE: callbacks/create.go function BeforeCreate (line 15) | func BeforeCreate(db *gorm.DB) { function Create (line 37) | func Create(config *Config) func(db *gorm.DB) { function AfterCreate (line 223) | func AfterCreate(db *gorm.DB) { function ConvertToCreateValues (line 245) | func ConvertToCreateValues(stmt *gorm.Statement) (values clause.Values) { FILE: callbacks/create_test.go function TestConvertToCreateValues_DestType_Slice (line 16) | func TestConvertToCreateValues_DestType_Slice(t *testing.T) { FILE: callbacks/delete.go function BeforeDelete (line 13) | func BeforeDelete(db *gorm.DB) { function DeleteBeforeAssociations (line 26) | func DeleteBeforeAssociations(db *gorm.DB) { function Delete (line 113) | func Delete(config *Config) func(db *gorm.DB) { function AfterDelete (line 185) | func AfterDelete(db *gorm.DB) { FILE: callbacks/helper.go function ConvertMapToValuesForCreate (line 12) | func ConvertMapToValuesForCreate(stmt *gorm.Statement, mapValue map[stri... function ConvertSliceOfMapToValuesForCreate (line 43) | func ConvertSliceOfMapToValuesForCreate(stmt *gorm.Statement, mapValues ... function hasReturning (line 96) | func hasReturning(tx *gorm.DB, supportReturning bool) (bool, gorm.ScanMo... function checkMissingWhereConditions (line 109) | func checkMissingWhereConditions(db *gorm.DB) { function loadOrStoreVisitMap (line 128) | func loadOrStoreVisitMap(visitMap *visitMap, v reflect.Value) (loaded bo... FILE: callbacks/helper_test.go function TestLoadOrStoreVisitMap (line 11) | func TestLoadOrStoreVisitMap(t *testing.T) { function TestConvertMapToValuesForCreate (line 41) | func TestConvertMapToValuesForCreate(t *testing.T) { function TestConvertSliceOfMapToValuesForCreate (line 99) | func TestConvertSliceOfMapToValuesForCreate(t *testing.T) { FILE: callbacks/interfaces.go type BeforeCreateInterface (line 5) | type BeforeCreateInterface interface type AfterCreateInterface (line 9) | type AfterCreateInterface interface type BeforeUpdateInterface (line 13) | type BeforeUpdateInterface interface type AfterUpdateInterface (line 17) | type AfterUpdateInterface interface type BeforeSaveInterface (line 21) | type BeforeSaveInterface interface type AfterSaveInterface (line 25) | type AfterSaveInterface interface type BeforeDeleteInterface (line 29) | type BeforeDeleteInterface interface type AfterDeleteInterface (line 33) | type AfterDeleteInterface interface type AfterFindInterface (line 37) | type AfterFindInterface interface FILE: callbacks/preload.go function parsePreloadMap (line 38) | func parsePreloadMap(s *schema.Schema, preloads map[string][]interface{}... function embeddedValues (line 71) | func embeddedValues(embeddedRelations *schema.Relationships) []string { function preloadEntryPoint (line 90) | func preloadEntryPoint(db *gorm.DB, joins []string, relationships *schem... function preloadDB (line 169) | func preloadDB(db *gorm.DB, reflectValue reflect.Value, dest interface{}... function preload (line 185) | func preload(tx *gorm.DB, rel *schema.Relationship, conds []interface{},... FILE: callbacks/query.go function Query (line 14) | func Query(db *gorm.DB) { function BuildQuerySQL (line 36) | func BuildQuerySQL(db *gorm.DB) { function Preload (line 277) | func Preload(db *gorm.DB) { function AfterQuery (line 298) | func AfterQuery(db *gorm.DB) { FILE: callbacks/raw.go function RawExec (line 7) | func RawExec(db *gorm.DB) { FILE: callbacks/row.go function RowQuery (line 7) | func RowQuery(db *gorm.DB) { FILE: callbacks/transaction.go function BeginTransaction (line 7) | func BeginTransaction(db *gorm.DB) { function CommitOrRollbackTransaction (line 20) | func CommitOrRollbackTransaction(db *gorm.DB) { FILE: callbacks/update.go function SetupUpdateReflectValue (line 13) | func SetupUpdateReflectValue(db *gorm.DB) { function BeforeUpdate (line 33) | func BeforeUpdate(db *gorm.DB) { function Update (line 56) | func Update(config *Config) func(db *gorm.DB) { function AfterUpdate (line 117) | func AfterUpdate(db *gorm.DB) { function ConvertToAssignments (line 140) | func ConvertToAssignments(stmt *gorm.Statement) (set clause.Set) { FILE: chainable_api.go method Model (line 18) | func (db *DB) Model(value interface{}) (tx *DB) { method Clauses (line 38) | func (db *DB) Clauses(conds ...clause.Expression) (tx *DB) { method Table (line 64) | func (db *DB) Table(name string, args ...interface{}) (tx *DB) { method Distinct (line 94) | func (db *DB) Distinct(args ...interface{}) (tx *DB) { method Select (line 112) | func (db *DB) Select(query interface{}, args ...interface{}) (tx *DB) { method Omit (line 177) | func (db *DB) Omit(columns ...string) (tx *DB) { method MapColumns (line 189) | func (db *DB) MapColumns(m map[string]string) (tx *DB) { method Where (line 207) | func (db *DB) Where(query interface{}, args ...interface{}) (tx *DB) { method Not (line 221) | func (db *DB) Not(query interface{}, args ...interface{}) (tx *DB) { method Or (line 235) | func (db *DB) Or(query interface{}, args ...interface{}) (tx *DB) { method Joins (line 248) | func (db *DB) Joins(query string, args ...interface{}) (tx *DB) { method InnerJoins (line 254) | func (db *DB) InnerJoins(query string, args ...interface{}) (tx *DB) { function joins (line 258) | func joins(db *DB, joinType clause.JoinType, query string, args ...inter... method Group (line 283) | func (db *DB) Group(name string) (tx *DB) { method Having (line 297) | func (db *DB) Having(query interface{}, args ...interface{}) (tx *DB) { method Order (line 313) | func (db *DB) Order(value interface{}) (tx *DB) { method Limit (line 343) | func (db *DB) Limit(limit int) (tx *DB) { method Offset (line 357) | func (db *DB) Offset(offset int) (tx *DB) { method Scopes (line 376) | func (db *DB) Scopes(funcs ...func(*DB) *DB) (tx *DB) { method executeScopes (line 382) | func (db *DB) executeScopes() (tx *DB) { method Preload (line 395) | func (db *DB) Preload(query string, args ...interface{}) (tx *DB) { method Attrs (line 418) | func (db *DB) Attrs(attrs ...interface{}) (tx *DB) { method Assign (line 439) | func (db *DB) Assign(attrs ...interface{}) (tx *DB) { method Unscoped (line 455) | func (db *DB) Unscoped() (tx *DB) { method Raw (line 461) | func (db *DB) Raw(sql string, values ...interface{}) (tx *DB) { FILE: clause/association.go type AssociationOpType (line 4) | type AssociationOpType constant OpUnlink (line 7) | OpUnlink AssociationOpType = iota constant OpDelete (line 8) | OpDelete constant OpUpdate (line 9) | OpUpdate constant OpCreate (line 10) | OpCreate type Association (line 14) | type Association struct method Assignments (line 28) | func (ao Association) Assignments() []Assignment { method AssociationAssignments (line 33) | func (ao Association) AssociationAssignments() []Association { type AssociationAssigner (line 23) | type AssociationAssigner interface FILE: clause/benchmarks_test.go function BenchmarkSelect (line 13) | func BenchmarkSelect(b *testing.B) { function BenchmarkComplexSelect (line 29) | func BenchmarkComplexSelect(b *testing.B) { FILE: clause/clause.go type Interface (line 4) | type Interface interface type ClauseBuilder (line 11) | type ClauseBuilder type Writer (line 13) | type Writer interface type Builder (line 19) | type Builder interface type Clause (line 27) | type Clause struct method Build (line 37) | func (c Clause) Build(builder Builder) { constant PrimaryKey (line 66) | PrimaryKey string = "~~~py~~~" constant CurrentTable (line 67) | CurrentTable string = "~~~ct~~~" constant Associations (line 68) | Associations string = "~~~as~~~" type Column (line 77) | type Column struct type Table (line 85) | type Table struct FILE: clause/clause_test.go function checkBuildClauses (line 17) | func checkBuildClauses(t *testing.T, clauses []clause.Interface, result ... FILE: clause/delete.go type Delete (line 3) | type Delete struct method Name (line 7) | func (d Delete) Name() string { method Build (line 11) | func (d Delete) Build(builder Builder) { method MergeClause (line 20) | func (d Delete) MergeClause(clause *Clause) { FILE: clause/delete_test.go function TestDelete (line 10) | func TestDelete(t *testing.T) { FILE: clause/expression.go type Expression (line 11) | type Expression interface type NegationExpressionBuilder (line 16) | type NegationExpressionBuilder interface type Expr (line 21) | type Expr struct method Build (line 28) | func (expr Expr) Build(builder Builder) { type NamedExpr (line 61) | type NamedExpr struct method Build (line 67) | func (expr NamedExpr) Build(builder Builder) { function processValue (line 161) | func processValue(builder Builder, value interface{}) { type IN (line 185) | type IN struct method Build (line 190) | func (in IN) Build(builder Builder) { method NegationBuild (line 211) | func (in IN) NegationBuild(builder Builder) { type Eq (line 232) | type Eq struct method Build (line 237) | func (eq Eq) Build(builder Builder) { method NegationBuild (line 265) | func (eq Eq) NegationBuild(builder Builder) { type Neq (line 270) | type Neq method Build (line 272) | func (neq Neq) Build(builder Builder) { method NegationBuild (line 296) | func (neq Neq) NegationBuild(builder Builder) { type Gt (line 301) | type Gt method Build (line 303) | func (gt Gt) Build(builder Builder) { method NegationBuild (line 309) | func (gt Gt) NegationBuild(builder Builder) { type Gte (line 314) | type Gte method Build (line 316) | func (gte Gte) Build(builder Builder) { method NegationBuild (line 322) | func (gte Gte) NegationBuild(builder Builder) { type Lt (line 327) | type Lt method Build (line 329) | func (lt Lt) Build(builder Builder) { method NegationBuild (line 335) | func (lt Lt) NegationBuild(builder Builder) { type Lte (line 340) | type Lte method Build (line 342) | func (lte Lte) Build(builder Builder) { method NegationBuild (line 348) | func (lte Lte) NegationBuild(builder Builder) { type Like (line 353) | type Like method Build (line 355) | func (like Like) Build(builder Builder) { method NegationBuild (line 361) | func (like Like) NegationBuild(builder Builder) { function eqNil (line 367) | func eqNil(value interface{}) bool { function eqNilReflect (line 375) | func eqNilReflect(value interface{}) bool { FILE: clause/expression_test.go function TestExpr (line 16) | func TestExpr(t *testing.T) { function TestNamedExpr (line 39) | func TestNamedExpr(t *testing.T) { function TestExpression (line 163) | func TestExpression(t *testing.T) { FILE: clause/from.go type From (line 4) | type From struct method Name (line 10) | func (from From) Name() string { method Build (line 15) | func (from From) Build(builder Builder) { method MergeClause (line 35) | func (from From) MergeClause(clause *Clause) { FILE: clause/from_test.go function TestFrom (line 10) | func TestFrom(t *testing.T) { FILE: clause/group_by.go type GroupBy (line 4) | type GroupBy struct method Name (line 10) | func (groupBy GroupBy) Name() string { method Build (line 15) | func (groupBy GroupBy) Build(builder Builder) { method MergeClause (line 31) | func (groupBy GroupBy) MergeClause(clause *Clause) { FILE: clause/group_by_test.go function TestGroupBy (line 10) | func TestGroupBy(t *testing.T) { FILE: clause/insert.go type Insert (line 3) | type Insert struct method Name (line 9) | func (insert Insert) Name() string { method Build (line 14) | func (insert Insert) Build(builder Builder) { method MergeClause (line 29) | func (insert Insert) MergeClause(clause *Clause) { FILE: clause/insert_test.go function TestInsert (line 10) | func TestInsert(t *testing.T) { FILE: clause/joins.go type JoinType (line 5) | type JoinType method Association (line 25) | func (jt JoinType) Association(name string) JoinTarget { method AssociationFrom (line 29) | func (jt JoinType) AssociationFrom(name string, subquery Expression) J... constant CrossJoin (line 8) | CrossJoin JoinType = "CROSS" constant InnerJoin (line 9) | InnerJoin JoinType = "INNER" constant LeftJoin (line 10) | LeftJoin JoinType = "LEFT" constant RightJoin (line 11) | RightJoin JoinType = "RIGHT" type JoinTarget (line 14) | type JoinTarget struct method As (line 33) | func (jt JoinTarget) As(name string) JoinTarget { function Has (line 21) | func Has(name string) JoinTarget { type Join (line 39) | type Join struct method Build (line 53) | func (join Join) Build(builder Builder) { function JoinTable (line 47) | func JoinTable(names ...string) Table { FILE: clause/joins_test.go function TestJoin (line 13) | func TestJoin(t *testing.T) { FILE: clause/limit.go type Limit (line 4) | type Limit struct method Name (line 10) | func (limit Limit) Name() string { method Build (line 15) | func (limit Limit) Build(builder Builder) { method MergeClause (line 30) | func (limit Limit) MergeClause(clause *Clause) { FILE: clause/limit_test.go function TestLimit (line 10) | func TestLimit(t *testing.T) { FILE: clause/locking.go constant LockingStrengthUpdate (line 4) | LockingStrengthUpdate = "UPDATE" constant LockingStrengthShare (line 5) | LockingStrengthShare = "SHARE" constant LockingOptionsSkipLocked (line 6) | LockingOptionsSkipLocked = "SKIP LOCKED" constant LockingOptionsNoWait (line 7) | LockingOptionsNoWait = "NOWAIT" type Locking (line 10) | type Locking struct method Name (line 17) | func (locking Locking) Name() string { method Build (line 22) | func (locking Locking) Build(builder Builder) { method MergeClause (line 36) | func (locking Locking) MergeClause(clause *Clause) { FILE: clause/locking_test.go function TestLocking (line 10) | func TestLocking(t *testing.T) { FILE: clause/on_conflict.go type OnConflict (line 3) | type OnConflict struct method Name (line 13) | func (OnConflict) Name() string { method Build (line 18) | func (onConflict OnConflict) Build(builder Builder) { method MergeClause (line 57) | func (onConflict OnConflict) MergeClause(clause *Clause) { FILE: clause/order_by.go type OrderByColumn (line 3) | type OrderByColumn struct type OrderBy (line 9) | type OrderBy struct method Name (line 15) | func (orderBy OrderBy) Name() string { method Build (line 20) | func (orderBy OrderBy) Build(builder Builder) { method MergeClause (line 38) | func (orderBy OrderBy) MergeClause(clause *Clause) { FILE: clause/order_by_test.go function TestOrderBy (line 10) | func TestOrderBy(t *testing.T) { FILE: clause/returning.go type Returning (line 3) | type Returning struct method Name (line 8) | func (returning Returning) Name() string { method Build (line 13) | func (returning Returning) Build(builder Builder) { method MergeClause (line 28) | func (returning Returning) MergeClause(clause *Clause) { FILE: clause/returning_test.go function TestReturning (line 10) | func TestReturning(t *testing.T) { FILE: clause/select.go type Select (line 4) | type Select struct method Name (line 10) | func (s Select) Name() string { method Build (line 14) | func (s Select) Build(builder Builder) { method MergeClause (line 31) | func (s Select) MergeClause(clause *Clause) { type CommaExpression (line 48) | type CommaExpression struct method Build (line 52) | func (comma CommaExpression) Build(builder Builder) { FILE: clause/select_test.go function TestSelect (line 10) | func TestSelect(t *testing.T) { FILE: clause/set.go type Set (line 5) | type Set method Name (line 17) | func (set Set) Name() string { method Build (line 21) | func (set Set) Build(builder Builder) { method MergeClause (line 39) | func (set Set) MergeClause(clause *Clause) { method Assignments (line 46) | func (set Set) Assignments() []Assignment { return []Assignment(set) } type Assignment (line 7) | type Assignment struct method Assignments (line 71) | func (a Assignment) Assignments() []Assignment { return []Assignment{a} } type Assigner (line 13) | type Assigner interface function Assignments (line 48) | func Assignments(values map[string]interface{}) Set { function AssignmentColumns (line 62) | func AssignmentColumns(values []string) Set { FILE: clause/set_test.go function TestSet (line 18) | func TestSet(t *testing.T) { function TestAssignments (line 50) | func TestAssignments(t *testing.T) { FILE: clause/update.go type Update (line 3) | type Update struct method Name (line 9) | func (update Update) Name() string { method Build (line 14) | func (update Update) Build(builder Builder) { method MergeClause (line 28) | func (update Update) MergeClause(clause *Clause) { FILE: clause/update_test.go function TestUpdate (line 10) | func TestUpdate(t *testing.T) { FILE: clause/values.go type Values (line 3) | type Values struct method Name (line 9) | func (Values) Name() string { method Build (line 14) | func (values Values) Build(builder Builder) { method MergeClause (line 42) | func (values Values) MergeClause(clause *Clause) { FILE: clause/values_test.go function TestValues (line 10) | func TestValues(t *testing.T) { FILE: clause/where.go constant AndWithSpace (line 8) | AndWithSpace = " AND " constant OrWithSpace (line 9) | OrWithSpace = " OR " type Where (line 13) | type Where struct method Name (line 18) | func (where Where) Name() string { method Build (line 23) | func (where Where) Build(builder Builder) { method MergeClause (line 92) | func (where Where) MergeClause(clause *Clause) { function buildExprs (line 43) | func buildExprs(exprs []Expression, builder Builder, joinCond string) { function And (line 103) | func And(exprs ...Expression) Expression { type AndConditions (line 117) | type AndConditions struct method Build (line 121) | func (and AndConditions) Build(builder Builder) { function Or (line 131) | func Or(exprs ...Expression) Expression { type OrConditions (line 138) | type OrConditions struct method Build (line 142) | func (or OrConditions) Build(builder Builder) { function Not (line 152) | func Not(exprs ...Expression) Expression { type NotConditions (line 164) | type NotConditions struct method Build (line 168) | func (not NotConditions) Build(builder Builder) { FILE: clause/where_test.go function TestWhere (line 10) | func TestWhere(t *testing.T) { FILE: clause/with.go type With (line 3) | type With struct FILE: finisher_api.go method Create (line 19) | func (db *DB) Create(value interface{}) (tx *DB) { method CreateInBatches (line 30) | func (db *DB) CreateInBatches(value interface{}, batchSize int) (tx *DB) { method Save (line 75) | func (db *DB) Save(value interface{}) (tx *DB) { method First (line 120) | func (db *DB) First(dest interface{}, conds ...interface{}) (tx *DB) { method Take (line 135) | func (db *DB) Take(dest interface{}, conds ...interface{}) (tx *DB) { method Last (line 148) | func (db *DB) Last(dest interface{}, conds ...interface{}) (tx *DB) { method Find (line 164) | func (db *DB) Find(dest interface{}, conds ...interface{}) (tx *DB) { method FindInBatches (line 176) | func (db *DB) FindInBatches(dest interface{}, batchSize int, fc func(tx ... method assignInterfacesToValue (line 248) | func (db *DB) assignInterfacesToValue(values ...interface{}) { method FirstOrInit (line 309) | func (db *DB) FirstOrInit(dest interface{}, conds ...interface{}) (tx *D... method FirstOrCreate (line 348) | func (db *DB) FirstOrCreate(dest interface{}, conds ...interface{}) (tx ... method Update (line 403) | func (db *DB) Update(column string, value interface{}) (tx *DB) { method Updates (line 410) | func (db *DB) Updates(values interface{}) (tx *DB) { method UpdateColumn (line 416) | func (db *DB) UpdateColumn(column string, value interface{}) (tx *DB) { method UpdateColumns (line 423) | func (db *DB) UpdateColumns(values interface{}) (tx *DB) { method Delete (line 433) | func (db *DB) Delete(value interface{}, conds ...interface{}) (tx *DB) { method Count (line 444) | func (db *DB) Count(count *int64) (tx *DB) { method Row (line 506) | func (db *DB) Row() *sql.Row { method Rows (line 516) | func (db *DB) Rows() (*sql.Rows, error) { method Scan (line 527) | func (db *DB) Scan(dest interface{}) (tx *DB) { method Pluck (line 556) | func (db *DB) Pluck(column string, dest interface{}) (tx *DB) { method ScanRows (line 577) | func (db *DB) ScanRows(rows *sql.Rows, dest interface{}) error { method Connection (line 598) | func (db *DB) Connection(fc func(tx *DB) error) (err error) { method Transaction (line 622) | func (db *DB) Transaction(fc func(tx *DB) error, opts ...*sql.TxOptions)... method Begin (line 665) | func (db *DB) Begin(opts ...*sql.TxOptions) *DB { method Commit (line 701) | func (db *DB) Commit() *DB { method Rollback (line 711) | func (db *DB) Rollback() *DB { method SavePoint (line 722) | func (db *DB) SavePoint(name string) *DB { method RollbackTo (line 745) | func (db *DB) RollbackTo(name string) *DB { method Exec (line 769) | func (db *DB) Exec(sql string, values ...interface{}) (tx *DB) { FILE: generics.go type result (line 17) | type result struct method ModifyStatement (line 22) | func (info *result) ModifyStatement(stmt *Statement) { method Build (line 27) | func (result) Build(clause.Builder) { function WithResult (line 30) | func WithResult() *result { type Interface (line 34) | type Interface interface type CreateInterface (line 40) | type CreateInterface interface type ChainInterface (line 71) | type ChainInterface interface type SetUpdateOnlyInterface (line 100) | type SetUpdateOnlyInterface interface type SetCreateOrUpdateInterface (line 105) | type SetCreateOrUpdateInterface interface type ExecInterface (line 110) | type ExecInterface interface type JoinBuilder (line 121) | type JoinBuilder interface type PreloadBuilder (line 129) | type PreloadBuilder interface type op (line 141) | type op function G (line 143) | func G[T any](db *DB, opts ...clause.Expression) Interface[T] { type g (line 163) | type g struct method apply (line 169) | func (g *g[T]) apply(ctx context.Context) *DB { method Raw (line 181) | func (c *g[T]) Raw(sql string, values ...interface{}) ExecInterface[T] { method Exec (line 191) | func (c *g[T]) Exec(ctx context.Context, sql string, values ...interface... type createG (line 196) | type createG struct method Table (line 200) | func (c createG[T]) Table(name string, args ...interface{}) CreateInterf... method Select (line 206) | func (c createG[T]) Select(query string, args ...interface{}) CreateInte... method Omit (line 212) | func (c createG[T]) Omit(columns ...string) CreateInterface[T] { method Set (line 218) | func (c createG[T]) Set(assignments ...clause.Assigner) SetCreateOrUpdat... method Create (line 222) | func (c createG[T]) Create(ctx context.Context, r *T) error { method CreateInBatches (line 226) | func (c createG[T]) CreateInBatches(ctx context.Context, r *[]T, batchSi... type chainG (line 230) | type chainG struct method getInstance (line 234) | func (c chainG[T]) getInstance() *DB { method with (line 239) | func (c chainG[T]) with(v op) chainG[T] { method Table (line 248) | func (c chainG[T]) Table(name string, args ...interface{}) ChainInterfac... method Scopes (line 254) | func (c chainG[T]) Scopes(scopes ...func(db *Statement)) ChainInterface[... method Where (line 263) | func (c chainG[T]) Where(query interface{}, args ...interface{}) ChainIn... method Not (line 269) | func (c chainG[T]) Not(query interface{}, args ...interface{}) ChainInte... method Or (line 275) | func (c chainG[T]) Or(query interface{}, args ...interface{}) ChainInter... method Limit (line 281) | func (c chainG[T]) Limit(offset int) ChainInterface[T] { method Offset (line 287) | func (c chainG[T]) Offset(offset int) ChainInterface[T] { type joinBuilder (line 293) | type joinBuilder struct method Where (line 297) | func (q *joinBuilder) Where(query interface{}, args ...interface{}) Jo... method Or (line 302) | func (q *joinBuilder) Or(query interface{}, args ...interface{}) JoinB... method Not (line 307) | func (q *joinBuilder) Not(query interface{}, args ...interface{}) Join... method Select (line 312) | func (q *joinBuilder) Select(columns ...string) JoinBuilder { method Omit (line 317) | func (q *joinBuilder) Omit(columns ...string) JoinBuilder { type preloadBuilder (line 322) | type preloadBuilder struct method Where (line 327) | func (q *preloadBuilder) Where(query interface{}, args ...interface{})... method Or (line 332) | func (q *preloadBuilder) Or(query interface{}, args ...interface{}) Pr... method Not (line 337) | func (q *preloadBuilder) Not(query interface{}, args ...interface{}) P... method Select (line 342) | func (q *preloadBuilder) Select(columns ...string) PreloadBuilder { method Omit (line 347) | func (q *preloadBuilder) Omit(columns ...string) PreloadBuilder { method Limit (line 352) | func (q *preloadBuilder) Limit(limit int) PreloadBuilder { method Offset (line 357) | func (q *preloadBuilder) Offset(offset int) PreloadBuilder { method Order (line 362) | func (q *preloadBuilder) Order(value interface{}) PreloadBuilder { method LimitPerRecord (line 367) | func (q *preloadBuilder) LimitPerRecord(num int) PreloadBuilder { method Joins (line 372) | func (c chainG[T]) Joins(jt clause.JoinTarget, on func(db JoinBuilder, j... method Select (line 431) | func (c chainG[T]) Select(query string, args ...interface{}) ChainInterf... method Omit (line 437) | func (c chainG[T]) Omit(columns ...string) ChainInterface[T] { method MapColumns (line 443) | func (c chainG[T]) MapColumns(m map[string]string) ChainInterface[T] { method Set (line 449) | func (c chainG[T]) Set(assignments ...clause.Assigner) SetUpdateOnlyInte... method Distinct (line 453) | func (c chainG[T]) Distinct(args ...interface{}) ChainInterface[T] { method Group (line 459) | func (c chainG[T]) Group(name string) ChainInterface[T] { method Having (line 465) | func (c chainG[T]) Having(query interface{}, args ...interface{}) ChainI... method Order (line 471) | func (c chainG[T]) Order(value interface{}) ChainInterface[T] { method Preload (line 477) | func (c chainG[T]) Preload(association string, query func(db PreloadBuil... method Delete (line 560) | func (c chainG[T]) Delete(ctx context.Context) (rowsAffected int, err er... method Update (line 566) | func (c chainG[T]) Update(ctx context.Context, name string, value any) (... method Updates (line 572) | func (c chainG[T]) Updates(ctx context.Context, t T) (rowsAffected int, ... method Count (line 577) | func (c chainG[T]) Count(ctx context.Context, column string) (result int... method Build (line 583) | func (c chainG[T]) Build(builder clause.Builder) { type execG (line 620) | type execG struct method First (line 624) | func (g execG[T]) First(ctx context.Context) (T, error) { method Scan (line 630) | func (g execG[T]) Scan(ctx context.Context, result interface{}) error { method Last (line 636) | func (g execG[T]) Last(ctx context.Context) (T, error) { method Take (line 642) | func (g execG[T]) Take(ctx context.Context) (T, error) { method Find (line 648) | func (g execG[T]) Find(ctx context.Context) ([]T, error) { method FindInBatches (line 654) | func (g execG[T]) FindInBatches(ctx context.Context, batchSize int, fc f... method Row (line 661) | func (g execG[T]) Row(ctx context.Context) *sql.Row { method Rows (line 666) | func (g execG[T]) Rows(ctx context.Context) (*sql.Rows, error) { method processSet (line 671) | func (c chainG[T]) processSet(items ...clause.Assigner) setCreateOrUpdat... type setCreateOrUpdateG (line 695) | type setCreateOrUpdateG struct method Update (line 701) | func (s setCreateOrUpdateG[T]) Update(ctx context.Context) (rowsAffected... method Create (line 719) | func (s setCreateOrUpdateG[T]) Create(ctx context.Context) error { method executeAssociationOperation (line 741) | func (s setCreateOrUpdateG[T]) executeAssociationOperation(ctx context.C... method handleAssociationCreate (line 755) | func (s setCreateOrUpdateG[T]) handleAssociationCreate(ctx context.Conte... method handleAssociationForOwners (line 772) | func (s setCreateOrUpdateG[T]) handleAssociationForOwners(base *DB, ctx ... method handleAssociation (line 791) | func (s setCreateOrUpdateG[T]) handleAssociation(ctx context.Context, ba... FILE: gorm.go constant preparedStmtDBKey (line 18) | preparedStmtDBKey = "preparedStmt" type Config (line 21) | type Config struct method Apply (line 78) | func (c *Config) Apply(config *Config) error { method AfterInitialize (line 86) | func (c *Config) AfterInitialize(db *DB) error { type Option (line 98) | type Option interface type DB (line 104) | type DB struct method Session (line 255) | func (db *DB) Session(config *Session) *DB { method WithContext (line 357) | func (db *DB) WithContext(ctx context.Context) *DB { method Debug (line 362) | func (db *DB) Debug() (tx *DB) { method Set (line 370) | func (db *DB) Set(key string, value interface{}) *DB { method Get (line 377) | func (db *DB) Get(key string) (interface{}, bool) { method InstanceSet (line 382) | func (db *DB) InstanceSet(key string, value interface{}) *DB { method InstanceGet (line 389) | func (db *DB) InstanceGet(key string) (interface{}, bool) { method Callback (line 394) | func (db *DB) Callback() *callbacks { method AddError (line 399) | func (db *DB) AddError(err error) error { method DB (line 417) | func (db *DB) DB() (*sql.DB, error) { method getInstance (line 439) | func (db *DB) getInstance() *DB { method SetupJoinTable (line 474) | func (db *DB) SetupJoinTable(model interface{}, field string, joinTabl... method Use (line 525) | func (db *DB) Use(plugin Plugin) error { method ToSQL (line 545) | func (db *DB) ToSQL(queryFn func(tx *DB) *DB) string { type Session (line 113) | type Session struct function Open (line 132) | func Open(dialector Dialector, opts ...Option) (db *DB, err error) { function Expr (line 469) | func Expr(expr string, args ...interface{}) clause.Expr { FILE: interfaces.go type Dialector (line 12) | type Dialector interface type Plugin (line 24) | type Plugin interface type ParamsFilter (line 29) | type ParamsFilter interface type ConnPool (line 34) | type ConnPool interface type SavePointerDialectorInterface (line 42) | type SavePointerDialectorInterface interface type TxBeginner (line 48) | type TxBeginner interface type ConnPoolBeginner (line 53) | type ConnPoolBeginner interface type TxCommitter (line 58) | type TxCommitter interface type Tx (line 64) | type Tx interface type Valuer (line 71) | type Valuer interface type GetDBConnector (line 76) | type GetDBConnector interface type Rows (line 81) | type Rows interface type ErrorTranslator (line 90) | type ErrorTranslator interface FILE: internal/lru/lru.go type EvictCallback (line 11) | type EvictCallback type LRU (line 14) | type LRU struct type bucket (line 32) | type bucket struct constant noEvictionTTL (line 38) | noEvictionTTL = time.Hour * 24 * 365 * 10 constant numBuckets (line 42) | numBuckets = 100 function NewLRU (line 51) | func NewLRU[K comparable, V any](size int, onEvict EvictCallback[K, V], ... method Purge (line 97) | func (c *LRU[K, V]) Purge() { method Add (line 117) | func (c *LRU[K, V]) Add(key K, value V) (evicted bool) { method Get (line 146) | func (c *LRU[K, V]) Get(key K) (value V, ok bool) { method Contains (line 163) | func (c *LRU[K, V]) Contains(key K) (ok bool) { method Peek (line 172) | func (c *LRU[K, V]) Peek(key K) (value V, ok bool) { method Remove (line 188) | func (c *LRU[K, V]) Remove(key K) bool { method RemoveOldest (line 199) | func (c *LRU[K, V]) RemoveOldest() (key K, value V, ok bool) { method GetOldest (line 210) | func (c *LRU[K, V]) GetOldest() (key K, value V, ok bool) { method KeyValues (line 219) | func (c *LRU[K, V]) KeyValues() map[K]V { method Keys (line 236) | func (c *LRU[K, V]) Keys() []K { method Values (line 252) | func (c *LRU[K, V]) Values() []V { method Len (line 267) | func (c *LRU[K, V]) Len() int { method Resize (line 274) | func (c *LRU[K, V]) Resize(size int) (evicted int) { method removeOldest (line 305) | func (c *LRU[K, V]) removeOldest() { method removeElement (line 312) | func (c *LRU[K, V]) removeElement(e *Entry[K, V]) { method deleteExpired (line 323) | func (c *LRU[K, V]) deleteExpired() { method addToBucket (line 341) | func (c *LRU[K, V]) addToBucket(e *Entry[K, V]) { method removeFromBucket (line 351) | func (c *LRU[K, V]) removeFromBucket(e *Entry[K, V]) { method Cap (line 356) | func (c *LRU[K, V]) Cap() int { type Entry (line 361) | type Entry struct method PrevEntry (line 386) | func (e *Entry[K, V]) PrevEntry() *Entry[K, V] { type LruList (line 395) | type LruList struct method Init (line 401) | func (l *LruList[K, V]) Init() *LruList[K, V] { function NewList (line 409) | func NewList[K comparable, V any]() *LruList[K, V] { return new(LruList[... method Length (line 413) | func (l *LruList[K, V]) Length() int { return l.len } method Back (line 416) | func (l *LruList[K, V]) Back() *Entry[K, V] { method lazyInit (line 424) | func (l *LruList[K, V]) lazyInit() { method insert (line 431) | func (l *LruList[K, V]) insert(e, at *Entry[K, V]) *Entry[K, V] { method insertValue (line 442) | func (l *LruList[K, V]) insertValue(k K, v V, expiresAt time.Time, at *E... method Remove (line 447) | func (l *LruList[K, V]) Remove(e *Entry[K, V]) V { method move (line 459) | func (l *LruList[K, V]) move(e, at *Entry[K, V]) { method PushFront (line 473) | func (l *LruList[K, V]) PushFront(k K, v V) *Entry[K, V] { method PushFrontExpirable (line 479) | func (l *LruList[K, V]) PushFrontExpirable(k K, v V, expiresAt time.Time... method MoveToFront (line 487) | func (l *LruList[K, V]) MoveToFront(e *Entry[K, V]) { FILE: internal/stmt_store/stmt_store.go type Stmt (line 13) | type Stmt struct method Error (line 20) | func (stmt *Stmt) Error() error { method Close (line 24) | func (stmt *Stmt) Close() error { type Store (line 36) | type Store interface constant defaultMaxSize (line 77) | defaultMaxSize = math.MaxInt constant defaultTTL (line 80) | defaultTTL = time.Hour * 24 function New (line 98) | func New(size int, ttl time.Duration) Store { type lruStore (line 115) | type lruStore struct method Keys (line 119) | func (s *lruStore) Keys() []string { method Get (line 123) | func (s *lruStore) Get(key string) (*Stmt, bool) { method Set (line 131) | func (s *lruStore) Set(key string, value *Stmt) { method Delete (line 135) | func (s *lruStore) Delete(key string) { method New (line 157) | func (s *lruStore) New(ctx context.Context, key string, isTransaction ... type ConnPool (line 139) | type ConnPool interface FILE: logger/logger.go constant Reset (line 20) | Reset = "\033[0m" constant Red (line 21) | Red = "\033[31m" constant Green (line 22) | Green = "\033[32m" constant Yellow (line 23) | Yellow = "\033[33m" constant Blue (line 24) | Blue = "\033[34m" constant Magenta (line 25) | Magenta = "\033[35m" constant Cyan (line 26) | Cyan = "\033[36m" constant White (line 27) | White = "\033[37m" constant BlueBold (line 28) | BlueBold = "\033[34;1m" constant MagentaBold (line 29) | MagentaBold = "\033[35;1m" constant RedBold (line 30) | RedBold = "\033[31;1m" constant YellowBold (line 31) | YellowBold = "\033[33;1m" type LogLevel (line 35) | type LogLevel constant Silent (line 39) | Silent LogLevel = iota + 1 constant Error (line 41) | Error constant Warn (line 43) | Warn constant Info (line 45) | Info type Writer (line 49) | type Writer interface type Config (line 54) | type Config struct type Interface (line 63) | type Interface interface function New (line 91) | func New(writer Writer, config Config) Interface { type logger (line 122) | type logger struct method LogMode (line 130) | func (l *logger) LogMode(level LogLevel) Interface { method Info (line 137) | func (l *logger) Info(ctx context.Context, msg string, data ...interfa... method Warn (line 144) | func (l *logger) Warn(ctx context.Context, msg string, data ...interfa... method Error (line 151) | func (l *logger) Error(ctx context.Context, msg string, data ...interf... method Trace (line 160) | func (l *logger) Trace(ctx context.Context, begin time.Time, fc func()... method ParamsFilter (line 193) | func (l *logger) ParamsFilter(ctx context.Context, sql string, params ... type traceRecorder (line 200) | type traceRecorder struct method New (line 209) | func (l *traceRecorder) New() *traceRecorder { method Trace (line 214) | func (l *traceRecorder) Trace(ctx context.Context, begin time.Time, fc... method ParamsFilter (line 220) | func (l *traceRecorder) ParamsFilter(ctx context.Context, sql string, ... FILE: logger/slog.go type slogLogger (line 15) | type slogLogger struct method LogMode (line 34) | func (l *slogLogger) LogMode(level LogLevel) Interface { method Info (line 40) | func (l *slogLogger) Info(ctx context.Context, msg string, data ...int... method Warn (line 46) | func (l *slogLogger) Warn(ctx context.Context, msg string, data ...int... method Error (line 52) | func (l *slogLogger) Error(ctx context.Context, msg string, data ...in... method Trace (line 58) | func (l *slogLogger) Trace(ctx context.Context, begin time.Time, fc fu... method log (line 96) | func (l *slogLogger) log(ctx context.Context, level slog.Level, msg st... method ParamsFilter (line 111) | func (l *slogLogger) ParamsFilter(ctx context.Context, sql string, par... function NewSlogLogger (line 24) | func NewSlogLogger(logger *slog.Logger, config Config) Interface { FILE: logger/slog_test.go function TestSlogLogger (line 14) | func TestSlogLogger(t *testing.T) { FILE: logger/sql.go constant tmFmtWithMS (line 17) | tmFmtWithMS = "2006-01-02 15:04:05.999" constant tmFmtZero (line 18) | tmFmtZero = "0000-00-00 00:00:00" constant nullStr (line 19) | nullStr = "NULL" function isPrintable (line 22) | func isPrintable(s string) bool { function isNumeric (line 37) | func isNumeric(k reflect.Kind) bool { function ExplainSQL (line 51) | func ExplainSQL(sql string, numericPlaceholder *regexp.Regexp, escaper s... FILE: logger/sql_test.go type JSON (line 15) | type JSON method Value (line 17) | func (j JSON) Value() (driver.Value, error) { type ExampleStruct (line 24) | type ExampleStruct struct method Value (line 29) | func (s ExampleStruct) Value() (driver.Value, error) { function format (line 33) | func format(v []byte, escaper string) string { function TestExplainSQL (line 37) | func TestExplainSQL(t *testing.T) { FILE: migrator.go method Migrator (line 11) | func (db *DB) Migrator() Migrator { method AutoMigrate (line 23) | func (db *DB) AutoMigrate(dst ...interface{}) error { type ViewOption (line 28) | type ViewOption struct type ColumnType (line 35) | type ColumnType interface type Index (line 50) | type Index interface type TableType (line 60) | type TableType interface type Migrator (line 68) | type Migrator interface FILE: migrator/column_type.go type ColumnType (line 9) | type ColumnType struct method Name (line 27) | func (ct ColumnType) Name() string { method DatabaseTypeName (line 40) | func (ct ColumnType) DatabaseTypeName() string { method ColumnType (line 48) | func (ct ColumnType) ColumnType() (columnType string, ok bool) { method PrimaryKey (line 53) | func (ct ColumnType) PrimaryKey() (isPrimaryKey bool, ok bool) { method AutoIncrement (line 58) | func (ct ColumnType) AutoIncrement() (isAutoIncrement bool, ok bool) { method Length (line 63) | func (ct ColumnType) Length() (length int64, ok bool) { method DecimalSize (line 71) | func (ct ColumnType) DecimalSize() (precision int64, scale int64, ok b... method Nullable (line 79) | func (ct ColumnType) Nullable() (nullable bool, ok bool) { method Unique (line 87) | func (ct ColumnType) Unique() (unique bool, ok bool) { method ScanType (line 92) | func (ct ColumnType) ScanType() reflect.Type { method Comment (line 100) | func (ct ColumnType) Comment() (value string, ok bool) { method DefaultValue (line 105) | func (ct ColumnType) DefaultValue() (value string, ok bool) { FILE: migrator/index.go type Index (line 6) | type Index struct method Table (line 16) | func (idx Index) Table() string { method Name (line 21) | func (idx Index) Name() string { method Columns (line 26) | func (idx Index) Columns() []string { method PrimaryKey (line 31) | func (idx Index) PrimaryKey() (isPrimaryKey bool, ok bool) { method Unique (line 36) | func (idx Index) Unique() (unique bool, ok bool) { method Option (line 41) | func (idx Index) Option() string { FILE: migrator/migrator.go type Migrator (line 34) | type Migrator struct method RunWithValue (line 61) | func (m Migrator) RunWithValue(value interface{}, fc func(*gorm.Statem... method DataTypeOf (line 78) | func (m Migrator) DataTypeOf(field *schema.Field) string { method FullDataTypeOf (line 90) | func (m Migrator) FullDataTypeOf(field *schema.Field) (expr clause.Exp... method GetQueryAndExecTx (line 110) | func (m Migrator) GetQueryAndExecTx() (queryTx, execTx *gorm.DB) { method AutoMigrate (line 121) | func (m Migrator) AutoMigrate(values ...interface{}) error { method GetTables (line 208) | func (m Migrator) GetTables() (tableList []string, err error) { method CreateTable (line 215) | func (m Migrator) CreateTable(values ...interface{}) error { method DropTable (line 319) | func (m Migrator) DropTable(values ...interface{}) error { method HasTable (line 333) | func (m Migrator) HasTable(value interface{}) bool { method RenameTable (line 345) | func (m Migrator) RenameTable(oldName, newName interface{}) error { method AddColumn (line 373) | func (m Migrator) AddColumn(value interface{}, name string) error { method DropColumn (line 396) | func (m Migrator) DropColumn(value interface{}, name string) error { method AlterColumn (line 411) | func (m Migrator) AlterColumn(value interface{}, field string) error { method HasColumn (line 428) | func (m Migrator) HasColumn(value interface{}, field string) bool { method RenameColumn (line 449) | func (m Migrator) RenameColumn(value interface{}, oldName, newName str... method MigrateColumn (line 469) | func (m Migrator) MigrateColumn(value interface{}, field *schema.Field... method MigrateColumnUnique (line 594) | func (m Migrator) MigrateColumnUnique(value interface{}, field *schema... method ColumnTypes (line 615) | func (m Migrator) ColumnTypes(value interface{}) ([]gorm.ColumnType, e... method CreateView (line 655) | func (m Migrator) CreateView(name string, option gorm.ViewOption) error { method DropView (line 679) | func (m Migrator) DropView(name string) error { method GuessConstraintAndTable (line 686) | func (m Migrator) GuessConstraintAndTable(stmt *gorm.Statement, name s... method GuessConstraintInterfaceAndTable (line 700) | func (m Migrator) GuessConstraintInterfaceAndTable(stmt *gorm.Statemen... method CreateConstraint (line 757) | func (m Migrator) CreateConstraint(value interface{}, name string) err... method DropConstraint (line 773) | func (m Migrator) DropConstraint(value interface{}, name string) error { method HasConstraint (line 784) | func (m Migrator) HasConstraint(value interface{}, name string) bool { method BuildIndexOptions (line 803) | func (m Migrator) BuildIndexOptions(opts []schema.IndexOption, stmt *g... method CreateIndex (line 830) | func (m Migrator) CreateIndex(value interface{}, name string) error { method DropIndex (line 865) | func (m Migrator) DropIndex(value interface{}, name string) error { method HasIndex (line 878) | func (m Migrator) HasIndex(value interface{}, name string) bool { method RenameIndex (line 898) | func (m Migrator) RenameIndex(value interface{}, oldName, newName stri... method CurrentDatabase (line 908) | func (m Migrator) CurrentDatabase() (name string) { method ReorderModels (line 914) | func (m Migrator) ReorderModels(values []interface{}, autoAdd bool) (r... method CurrentTable (line 1018) | func (m Migrator) CurrentTable(stmt *gorm.Statement) interface{} { method GetIndexes (line 1026) | func (m Migrator) GetIndexes(dst interface{}) ([]gorm.Index, error) { method GetTypeAliases (line 1031) | func (m Migrator) GetTypeAliases(databaseTypeName string) []string { method TableType (line 1036) | func (m Migrator) TableType(dst interface{}) (gorm.TableType, error) { type Config (line 39) | type Config struct type printSQLLogger (line 45) | type printSQLLogger struct method Trace (line 49) | func (l *printSQLLogger) Trace(ctx context.Context, begin time.Time, f... type GormDataTypeInterface (line 56) | type GormDataTypeInterface interface type BuildIndexOptionsInterface (line 825) | type BuildIndexOptionsInterface interface FILE: migrator/table_type.go type TableType (line 8) | type TableType struct method Schema (line 16) | func (ct TableType) Schema() string { method Name (line 21) | func (ct TableType) Name() string { method Type (line 26) | func (ct TableType) Type() string { method Comment (line 31) | func (ct TableType) Comment() (comment string, ok bool) { FILE: model.go type Model (line 11) | type Model struct FILE: prepare_stmt.go type PreparedStmtDB (line 15) | type PreparedStmtDB struct method GetDBConn (line 39) | func (db *PreparedStmtDB) GetDBConn() (*sql.DB, error) { method Close (line 52) | func (db *PreparedStmtDB) Close() { method Reset (line 62) | func (db *PreparedStmtDB) Reset() { method prepare (line 66) | func (db *PreparedStmtDB) prepare(ctx context.Context, conn ConnPool, ... method BeginTx (line 88) | func (db *PreparedStmtDB) BeginTx(ctx context.Context, opt *sql.TxOpti... method ExecContext (line 109) | func (db *PreparedStmtDB) ExecContext(ctx context.Context, query strin... method QueryContext (line 120) | func (db *PreparedStmtDB) QueryContext(ctx context.Context, query stri... method QueryRowContext (line 131) | func (db *PreparedStmtDB) QueryRowContext(ctx context.Context, query s... method Ping (line 139) | func (db *PreparedStmtDB) Ping() error { function NewPreparedStmtDB (line 30) | func NewPreparedStmtDB(connPool ConnPool, maxSize int, ttl time.Duration... type PreparedStmtTX (line 147) | type PreparedStmtTX struct method GetDBConn (line 152) | func (db *PreparedStmtTX) GetDBConn() (*sql.DB, error) { method Commit (line 156) | func (tx *PreparedStmtTX) Commit() error { method Rollback (line 163) | func (tx *PreparedStmtTX) Rollback() error { method ExecContext (line 170) | func (tx *PreparedStmtTX) ExecContext(ctx context.Context, query strin... method QueryContext (line 181) | func (tx *PreparedStmtTX) QueryContext(ctx context.Context, query stri... method QueryRowContext (line 192) | func (tx *PreparedStmtTX) QueryRowContext(ctx context.Context, query s... method Ping (line 200) | func (tx *PreparedStmtTX) Ping() error { FILE: scan.go function prepareValues (line 15) | func prepareValues(values []interface{}, db *DB, columnTypes []*sql.Colu... function scanIntoMap (line 39) | func scanIntoMap(mapValue map[string]interface{}, values []interface{}, ... method scanIntoStruct (line 54) | func (db *DB) scanIntoStruct(rows Rows, reflectValue reflect.Value, valu... type ScanMode (line 116) | type ScanMode constant ScanInitialized (line 120) | ScanInitialized ScanMode = 1 << 0 constant ScanUpdate (line 121) | ScanUpdate ScanMode = 1 << 1 constant ScanOnConflictDoNothing (line 122) | ScanOnConflictDoNothing ScanMode = 1 << 2 function Scan (line 126) | func Scan(rows Rows, db *DB, mode ScanMode) { FILE: schema/callbacks_test.go type UserWithCallback (line 12) | type UserWithCallback struct method BeforeSave (line 14) | func (UserWithCallback) BeforeSave(*gorm.DB) error { method AfterCreate (line 18) | func (UserWithCallback) AfterCreate(*gorm.DB) error { function TestCallback (line 22) | func TestCallback(t *testing.T) { FILE: schema/constraint.go type CheckConstraint (line 13) | type CheckConstraint struct method GetName (line 19) | func (chk *CheckConstraint) GetName() string { return chk.Name } method Build (line 21) | func (chk *CheckConstraint) Build() (sql string, vars []interface{}) { method ParseCheckConstraints (line 26) | func (schema *Schema) ParseCheckConstraints() map[string]CheckConstraint { type UniqueConstraint (line 45) | type UniqueConstraint struct method GetName (line 50) | func (uni *UniqueConstraint) GetName() string { return uni.Name } method Build (line 52) | func (uni *UniqueConstraint) Build() (sql string, vars []interface{}) { method ParseUniqueConstraints (line 57) | func (schema *Schema) ParseUniqueConstraints() map[string]UniqueConstrai... FILE: schema/constraint_test.go type UserCheck (line 12) | type UserCheck struct function TestParseCheck (line 18) | func TestParseCheck(t *testing.T) { function TestParseUniqueConstraints (line 58) | func TestParseUniqueConstraints(t *testing.T) { FILE: schema/field.go type DataType (line 28) | type DataType type TimeType (line 30) | type TimeType constant UnixTime (line 35) | UnixTime TimeType = 1 constant UnixSecond (line 36) | UnixSecond TimeType = 2 constant UnixMillisecond (line 37) | UnixMillisecond TimeType = 3 constant UnixNanosecond (line 38) | UnixNanosecond TimeType = 4 constant Bool (line 43) | Bool DataType = "bool" constant Int (line 44) | Int DataType = "int" constant Uint (line 45) | Uint DataType = "uint" constant Float (line 46) | Float DataType = "float" constant String (line 47) | String DataType = "string" constant Time (line 48) | Time DataType = "time" constant Bytes (line 49) | Bytes DataType = "bytes" constant DefaultAutoIncrementIncrement (line 52) | DefaultAutoIncrementIncrement int64 = 1 type Field (line 55) | type Field struct method BindName (line 101) | func (field *Field) BindName() string { method setupValuerAndSetter (line 451) | func (field *Field) setupValuerAndSetter(modelType reflect.Type) { method setupNewValuePool (line 992) | func (field *Field) setupNewValuePool() { method ParseField (line 106) | func (schema *Schema) ParseField(fieldStruct reflect.StructField) *Field { FILE: schema/field_test.go function TestFieldValuerAndSetter (line 16) | func TestFieldValuerAndSetter(t *testing.T) { function TestPointerFieldValuerAndSetter (line 92) | func TestPointerFieldValuerAndSetter(t *testing.T) { function TestAdvancedDataTypeValuerAndSetter (line 162) | func TestAdvancedDataTypeValuerAndSetter(t *testing.T) { type UserWithPermissionControl (line 230) | type UserWithPermissionControl struct function TestParseFieldWithPermission (line 242) | func TestParseFieldWithPermission(t *testing.T) { type ID (line 266) | type ID type INT (line 267) | type INT type INT8 (line 268) | type INT8 type INT16 (line 269) | type INT16 type INT32 (line 270) | type INT32 type INT64 (line 271) | type INT64 type UINT (line 272) | type UINT type UINT8 (line 273) | type UINT8 type UINT16 (line 274) | type UINT16 type UINT32 (line 275) | type UINT32 type UINT64 (line 276) | type UINT64 type FLOAT32 (line 277) | type FLOAT32 type FLOAT64 (line 278) | type FLOAT64 type BOOL (line 279) | type BOOL type STRING (line 280) | type STRING type TIME (line 281) | type TIME type BYTES (line 282) | type BYTES type TypeAlias (line 284) | type TypeAlias struct function TestTypeAliasField (line 305) | func TestTypeAliasField(t *testing.T) { FILE: schema/index.go type Index (line 10) | type Index struct type IndexOption (line 20) | type IndexOption struct method ParseIndexes (line 30) | func (schema *Schema) ParseIndexes() []*Index { method LookIndex (line 80) | func (schema *Schema) LookIndex(name string) *Index { function parseFieldIndexes (line 99) | func parseFieldIndexes(field *Field) (indexes []Index, err error) { FILE: schema/index_test.go type UserIndex (line 11) | type UserIndex struct type CompIdxLevel1C (line 40) | type CompIdxLevel1C struct type CompIdxLevel1B (line 45) | type CompIdxLevel1B struct type CompIdxLevel2C (line 49) | type CompIdxLevel2C struct type CompIdxLevel2B (line 54) | type CompIdxLevel2B struct function TestParseIndex (line 58) | func TestParseIndex(t *testing.T) { function TestParseIndexWithUniqueIndexAndUnique (line 174) | func TestParseIndexWithUniqueIndexAndUnique(t *testing.T) { function CheckIndices (line 254) | func CheckIndices(t *testing.T, expected, actual []*schema.Index) { FILE: schema/interfaces.go type ConstraintInterface (line 8) | type ConstraintInterface interface type GormDataTypeInterface (line 14) | type GormDataTypeInterface interface type FieldNewValuePool (line 19) | type FieldNewValuePool interface type CreateClausesInterface (line 25) | type CreateClausesInterface interface type QueryClausesInterface (line 30) | type QueryClausesInterface interface type UpdateClausesInterface (line 35) | type UpdateClausesInterface interface type DeleteClausesInterface (line 40) | type DeleteClausesInterface interface FILE: schema/model_test.go type User (line 11) | type User struct type mytime (line 30) | type mytime type myint (line 31) | type myint type AdvancedDataTypeUser (line 35) | type AdvancedDataTypeUser struct type BaseModel (line 45) | type BaseModel struct type VersionModel (line 54) | type VersionModel struct type VersionUser (line 59) | type VersionUser struct FILE: schema/naming.go type Namer (line 16) | type Namer interface type Replacer (line 28) | type Replacer interface type NamingStrategy (line 35) | type NamingStrategy struct method TableName (line 44) | func (ns NamingStrategy) TableName(str string) string { method SchemaName (line 52) | func (ns NamingStrategy) SchemaName(table string) string { method ColumnName (line 62) | func (ns NamingStrategy) ColumnName(table, column string) string { method JoinTableName (line 67) | func (ns NamingStrategy) JoinTableName(str string) string { method RelationshipFKName (line 79) | func (ns NamingStrategy) RelationshipFKName(rel Relationship) string { method CheckerName (line 84) | func (ns NamingStrategy) CheckerName(table, column string) string { method IndexName (line 89) | func (ns NamingStrategy) IndexName(table, column string) string { method UniqueName (line 94) | func (ns NamingStrategy) UniqueName(table, column string) string { method formatName (line 98) | func (ns NamingStrategy) formatName(prefix, table, name string) string { method toDBName (line 131) | func (ns NamingStrategy) toDBName(name string) string { method toSchemaName (line 190) | func (ns NamingStrategy) toSchemaName(name string) string { function init (line 123) | func init() { FILE: schema/naming_test.go function TestToDBName (line 8) | func TestToDBName(t *testing.T) { function TestNamingStrategy (line 58) | func TestNamingStrategy(t *testing.T) { type CustomReplacer (line 96) | type CustomReplacer struct method Replace (line 100) | func (r CustomReplacer) Replace(name string) string { function TestCustomReplacer (line 104) | func TestCustomReplacer(t *testing.T) { function TestCustomReplacerWithNoLowerCase (line 148) | func TestCustomReplacerWithNoLowerCase(t *testing.T) { function TestFormatNameWithStringLongerThan63Characters (line 192) | func TestFormatNameWithStringLongerThan63Characters(t *testing.T) { function TestFormatNameWithStringLongerThan64Characters (line 201) | func TestFormatNameWithStringLongerThan64Characters(t *testing.T) { function TestReplaceEmptyTableName (line 210) | func TestReplaceEmptyTableName(t *testing.T) { FILE: schema/relationship.go type RelationshipType (line 18) | type RelationshipType constant HasOne (line 21) | HasOne RelationshipType = "has_one" constant HasMany (line 22) | HasMany RelationshipType = "has_many" constant BelongsTo (line 23) | BelongsTo RelationshipType = "belongs_to" constant Many2Many (line 24) | Many2Many RelationshipType = "many_to_many" constant has (line 25) | has RelationshipType = "has" type Relationships (line 28) | type Relationships struct type Relationship (line 40) | type Relationship struct method ParseConstraint (line 661) | func (rel *Relationship) ParseConstraint() *Constraint { method ToQueryConditions (line 728) | func (rel *Relationship) ToQueryConditions(ctx context.Context, reflec... type Polymorphic (line 52) | type Polymorphic struct type Reference (line 58) | type Reference struct method parseRelation (line 65) | func (schema *Schema) parseRelation(field *Field) *Relationship { function hasPolymorphicRelation (line 136) | func hasPolymorphicRelation(tagSettings map[string]string) bool { method setRelation (line 147) | func (schema *Schema) setRelation(relation *Relationship) { method buildPolymorphicRelation (line 195) | func (schema *Schema) buildPolymorphicRelation(relation *Relationship, f... method buildMany2ManyRelation (line 271) | func (schema *Schema) buildMany2ManyRelation(relation *Relationship, fie... type guessLevel (line 446) | type guessLevel constant guessGuess (line 449) | guessGuess guessLevel = iota constant guessBelongs (line 450) | guessBelongs constant guessEmbeddedBelongs (line 451) | guessEmbeddedBelongs constant guessHas (line 452) | guessHas constant guessEmbeddedHas (line 453) | guessEmbeddedHas method guessRelation (line 456) | func (schema *Schema) guessRelation(relation *Relationship, field *Field... type Constraint (line 625) | type Constraint struct method GetName (line 636) | func (constraint *Constraint) GetName() string { return constraint.Name } method Build (line 638) | func (constraint *Constraint) Build() (sql string, vars []interface{}) { function copyableDataType (line 775) | func copyableDataType(str DataType) bool { FILE: schema/relationship_test.go function checkStructRelation (line 13) | func checkStructRelation(t *testing.T, data interface{}, relations ...Re... function TestBelongsToOverrideForeignKey (line 23) | func TestBelongsToOverrideForeignKey(t *testing.T) { function TestBelongsToOverrideReferences (line 41) | func TestBelongsToOverrideReferences(t *testing.T) { function TestBelongsToWithOnlyReferences (line 60) | func TestBelongsToWithOnlyReferences(t *testing.T) { function TestBelongsToWithOnlyReferences2 (line 79) | func TestBelongsToWithOnlyReferences2(t *testing.T) { function TestSelfReferentialBelongsTo (line 98) | func TestSelfReferentialBelongsTo(t *testing.T) { function TestSelfReferentialBelongsToOverrideReferences (line 112) | func TestSelfReferentialBelongsToOverrideReferences(t *testing.T) { function TestBelongsToWithMixin (line 126) | func TestBelongsToWithMixin(t *testing.T) { function TestHasOneOverrideForeignKey (line 149) | func TestHasOneOverrideForeignKey(t *testing.T) { function TestHasOneOverrideReferences (line 167) | func TestHasOneOverrideReferences(t *testing.T) { function TestHasOneOverrideReferences2 (line 186) | func TestHasOneOverrideReferences2(t *testing.T) { function TestHasOneWithOnlyReferences (line 204) | func TestHasOneWithOnlyReferences(t *testing.T) { function TestHasOneWithOnlyReferences2 (line 223) | func TestHasOneWithOnlyReferences2(t *testing.T) { function TestHasManyOverrideForeignKey (line 242) | func TestHasManyOverrideForeignKey(t *testing.T) { function TestHasManyOverrideReferences (line 260) | func TestHasManyOverrideReferences(t *testing.T) { function TestMany2ManyOverrideForeignKeyAndReferences (line 279) | func TestMany2ManyOverrideForeignKeyAndReferences(t *testing.T) { function TestMany2ManyOverrideForeignKey (line 310) | func TestMany2ManyOverrideForeignKey(t *testing.T) { function TestMany2ManySharedForeignKey (line 333) | func TestMany2ManySharedForeignKey(t *testing.T) { function TestMany2ManyOverrideJoinForeignKey (line 360) | func TestMany2ManyOverrideJoinForeignKey(t *testing.T) { function TestBuildReadonlyMany2ManyRelation (line 383) | func TestBuildReadonlyMany2ManyRelation(t *testing.T) { function TestMany2ManyWithMultiPrimaryKeys (line 406) | func TestMany2ManyWithMultiPrimaryKeys(t *testing.T) { function TestMultipleMany2Many (line 454) | func TestMultipleMany2Many(t *testing.T) { function TestSelfReferentialMany2Many (line 485) | func TestSelfReferentialMany2Many(t *testing.T) { type CreatedByModel (line 510) | type CreatedByModel struct type CreatedUser (line 515) | type CreatedUser struct function TestEmbeddedRelation (line 520) | func TestEmbeddedRelation(t *testing.T) { function TestEmbeddedHas (line 546) | func TestEmbeddedHas(t *testing.T) { function TestPolymorphic (line 605) | func TestPolymorphic(t *testing.T) { function TestEmbeddedBelongsTo (line 792) | func TestEmbeddedBelongsTo(t *testing.T) { function TestVariableRelation (line 860) | func TestVariableRelation(t *testing.T) { function TestSameForeignKey (line 880) | func TestSameForeignKey(t *testing.T) { function TestBelongsToSameForeignKey (line 904) | func TestBelongsToSameForeignKey(t *testing.T) { function TestHasOneWithSameForeignKey (line 928) | func TestHasOneWithSameForeignKey(t *testing.T) { function TestHasManySameForeignKey (line 947) | func TestHasManySameForeignKey(t *testing.T) { type Author (line 966) | type Author struct type Book (line 970) | type Book struct method TableName (line 976) | func (Book) TableName() string { function TestParseConstraintNameWithSchemaQualifiedLongTableName (line 980) | func TestParseConstraintNameWithSchemaQualifiedLongTableName(t *testing.... type InfoRelation (line 1002) | type InfoRelation struct type Info1 (line 1009) | type Info1 struct type Info2 (line 1016) | type Info2 struct function TestDataRace (line 1023) | func TestDataRace(t *testing.T) { FILE: schema/schema.go type callbackType (line 17) | type callbackType constant callbackTypeBeforeCreate (line 20) | callbackTypeBeforeCreate callbackType = "BeforeCreate" constant callbackTypeBeforeUpdate (line 21) | callbackTypeBeforeUpdate callbackType = "BeforeUpdate" constant callbackTypeAfterCreate (line 22) | callbackTypeAfterCreate callbackType = "AfterCreate" constant callbackTypeAfterUpdate (line 23) | callbackTypeAfterUpdate callbackType = "AfterUpdate" constant callbackTypeBeforeSave (line 24) | callbackTypeBeforeSave callbackType = "BeforeSave" constant callbackTypeAfterSave (line 25) | callbackTypeAfterSave callbackType = "AfterSave" constant callbackTypeBeforeDelete (line 26) | callbackTypeBeforeDelete callbackType = "BeforeDelete" constant callbackTypeAfterDelete (line 27) | callbackTypeAfterDelete callbackType = "AfterDelete" constant callbackTypeAfterFind (line 28) | callbackTypeAfterFind callbackType = "AfterFind" type Schema (line 34) | type Schema struct method String (line 63) | func (schema *Schema) String() string { method MakeSlice (line 70) | func (schema *Schema) MakeSlice() reflect.Value { method LookUpField (line 78) | func (schema *Schema) LookUpField(name string) *Field { method LookUpFieldByBindName (line 106) | func (schema *Schema) LookUpFieldByBindName(bindNames []string, name s... type Tabler (line 116) | type Tabler interface type TablerWithNamer (line 120) | type TablerWithNamer interface function Parse (line 133) | func Parse(dest interface{}, cacheStore *sync.Map, namer Namer) (*Schema... function ParseWithSpecialTableName (line 138) | func ParseWithSpecialTableName(dest interface{}, cacheStore *sync.Map, n... function getOrParse (line 392) | func getOrParse(dest interface{}, cacheStore *sync.Map, namer Namer) (*S... FILE: schema/schema_helper_test.go function checkSchema (line 14) | func checkSchema(t *testing.T, s *schema.Schema, v *schema.Schema, prima... function checkSchemaField (line 39) | func checkSchemaField(t *testing.T, s *schema.Schema, f *schema.Field, f... type Relation (line 93) | type Relation struct type Polymorphic (line 103) | type Polymorphic struct type JoinTable (line 109) | type JoinTable struct type Reference (line 115) | type Reference struct function checkSchemaRelation (line 124) | func checkSchemaRelation(t *testing.T, s *schema.Schema, relation Relati... type EmbeddedRelations (line 204) | type EmbeddedRelations struct function checkEmbeddedRelations (line 209) | func checkEmbeddedRelations(t *testing.T, actual map[string]*schema.Rela... function checkField (line 235) | func checkField(t *testing.T, s *schema.Schema, value reflect.Value, val... FILE: schema/schema_test.go function TestParseSchema (line 13) | func TestParseSchema(t *testing.T) { function TestParseSchemaWithMap (line 22) | func TestParseSchemaWithMap(t *testing.T) { function TestParseSchemaWithPointerFields (line 38) | func TestParseSchemaWithPointerFields(t *testing.T) { function checkUserSchema (line 47) | func checkUserSchema(t *testing.T, user *schema.Schema) { function TestParseSchemaWithAdvancedDataType (line 135) | func TestParseSchemaWithAdvancedDataType(t *testing.T) { type CustomizeTable (line 164) | type CustomizeTable struct method TableName (line 166) | func (CustomizeTable) TableName() string { function TestCustomizeTableName (line 170) | func TestCustomizeTableName(t *testing.T) { function TestNestedModel (line 181) | func TestNestedModel(t *testing.T) { function TestEmbeddedStruct (line 202) | func TestEmbeddedStruct(t *testing.T) { type CustomizedNamingStrategy (line 245) | type CustomizedNamingStrategy struct method ColumnName (line 249) | func (ns CustomizedNamingStrategy) ColumnName(table, column string) st... function TestEmbeddedStructForCustomizedNamingStrategy (line 270) | func TestEmbeddedStructForCustomizedNamingStrategy(t *testing.T) { function TestCompositePrimaryKeyWithAutoIncrement (line 313) | func TestCompositePrimaryKeyWithAutoIncrement(t *testing.T) { FILE: schema/serializer.go function RegisterSerializer (line 21) | func RegisterSerializer(name string, serializer SerializerInterface) { function GetSerializer (line 26) | func GetSerializer(name string) (serializer SerializerInterface, ok bool) { function init (line 34) | func init() { type serializer (line 41) | type serializer struct method Scan (line 52) | func (s *serializer) Scan(value interface{}) error { method Value (line 58) | func (s serializer) Value() (driver.Value, error) { type SerializerInterface (line 63) | type SerializerInterface interface type SerializerValuerInterface (line 69) | type SerializerValuerInterface interface type JSONSerializer (line 74) | type JSONSerializer struct method Scan (line 77) | func (JSONSerializer) Scan(ctx context.Context, field *Field, dst refl... method Value (line 104) | func (JSONSerializer) Value(ctx context.Context, field *Field, dst ref... type UnixSecondSerializer (line 116) | type UnixSecondSerializer struct method Scan (line 119) | func (UnixSecondSerializer) Scan(ctx context.Context, field *Field, ds... method Value (line 129) | func (UnixSecondSerializer) Value(ctx context.Context, field *Field, d... type GobSerializer (line 161) | type GobSerializer struct method Scan (line 164) | func (GobSerializer) Scan(ctx context.Context, field *Field, dst refle... method Value (line 185) | func (GobSerializer) Value(ctx context.Context, field *Field, dst refl... FILE: schema/serializer_test.go function TestUnixSecondSerializer_Value (line 11) | func TestUnixSecondSerializer_Value(t *testing.T) { FILE: schema/utils.go function ParseTagSetting (line 16) | func ParseTagSetting(str string, sep string) map[string]string { function toColumns (line 45) | func toColumns(val string) (results []string) { function removeSettingFromTag (line 54) | func removeSettingFromTag(tag reflect.StructTag, names ...string) reflec... function appendSettingFromTag (line 61) | func appendSettingFromTag(tag reflect.StructTag, value string) reflect.S... function GetRelationsValues (line 70) | func GetRelationsValues(ctx context.Context, reflectValue reflect.Value,... function GetIdentityFieldValuesMap (line 108) | func GetIdentityFieldValuesMap(ctx context.Context, reflectValue reflect... function GetIdentityFieldValuesMapFromValues (line 182) | func GetIdentityFieldValuesMapFromValues(ctx context.Context, values []i... function ToQueryValues (line 197) | func ToQueryValues(table string, foreignKeys []string, foreignValues [][... type embeddedNamer (line 219) | type embeddedNamer struct FILE: schema/utils_test.go function TestRemoveSettingFromTag (line 8) | func TestRemoveSettingFromTag(t *testing.T) { function TestParseTagSettingWithDoubleQuoteEscape (line 26) | func TestParseTagSettingWithDoubleQuoteEscape(t *testing.T) { FILE: soft_delete.go type DeletedAt (line 14) | type DeletedAt method Scan (line 17) | func (n *DeletedAt) Scan(value interface{}) error { method Value (line 22) | func (n DeletedAt) Value() (driver.Value, error) { method MarshalJSON (line 29) | func (n DeletedAt) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 36) | func (n *DeletedAt) UnmarshalJSON(b []byte) error { method QueryClauses (line 48) | func (DeletedAt) QueryClauses(f *schema.Field) []clause.Interface { method UpdateClauses (line 98) | func (DeletedAt) UpdateClauses(f *schema.Field) []clause.Interface { method DeleteClauses (line 123) | func (DeletedAt) DeleteClauses(f *schema.Field) []clause.Interface { function parseZeroValueTag (line 52) | func parseZeroValueTag(f *schema.Field) sql.NullString { type SoftDeleteQueryClause (line 61) | type SoftDeleteQueryClause struct method Name (line 66) | func (sd SoftDeleteQueryClause) Name() string { method Build (line 70) | func (sd SoftDeleteQueryClause) Build(clause.Builder) { method MergeClause (line 73) | func (sd SoftDeleteQueryClause) MergeClause(*clause.Clause) { method ModifyStatement (line 76) | func (sd SoftDeleteQueryClause) ModifyStatement(stmt *Statement) { type SoftDeleteUpdateClause (line 102) | type SoftDeleteUpdateClause struct method Name (line 107) | func (sd SoftDeleteUpdateClause) Name() string { method Build (line 111) | func (sd SoftDeleteUpdateClause) Build(clause.Builder) { method MergeClause (line 114) | func (sd SoftDeleteUpdateClause) MergeClause(*clause.Clause) { method ModifyStatement (line 117) | func (sd SoftDeleteUpdateClause) ModifyStatement(stmt *Statement) { type SoftDeleteDeleteClause (line 127) | type SoftDeleteDeleteClause struct method Name (line 132) | func (sd SoftDeleteDeleteClause) Name() string { method Build (line 136) | func (sd SoftDeleteDeleteClause) Build(clause.Builder) { method MergeClause (line 139) | func (sd SoftDeleteDeleteClause) MergeClause(*clause.Clause) { method ModifyStatement (line 142) | func (sd SoftDeleteDeleteClause) ModifyStatement(stmt *Statement) { FILE: statement.go type Statement (line 22) | type Statement struct method WriteString (line 70) | func (stmt *Statement) WriteString(str string) (int, error) { method WriteByte (line 75) | func (stmt *Statement) WriteByte(c byte) error { method WriteQuoted (line 80) | func (stmt *Statement) WriteQuoted(value interface{}) { method QuoteTo (line 85) | func (stmt *Statement) QuoteTo(writer clause.Writer, field interface{}) { method Quote (line 168) | func (stmt *Statement) Quote(field interface{}) string { method AddVar (line 175) | func (stmt *Statement) AddVar(writer clause.Writer, vars ...interface{... method AddClause (line 272) | func (stmt *Statement) AddClause(v clause.Interface) { method AddClauseIfNotExists (line 285) | func (stmt *Statement) AddClauseIfNotExists(v clause.Interface) { method BuildCondition (line 292) | func (stmt *Statement) BuildCondition(query interface{}, args ...inter... method Build (line 493) | func (stmt *Statement) Build(clauses ...string) { method Parse (line 512) | func (stmt *Statement) Parse(value interface{}) (err error) { method ParseWithSpecialTableName (line 516) | func (stmt *Statement) ParseWithSpecialTableName(value interface{}, sp... method clone (line 529) | func (stmt *Statement) clone() *Statement { method SetColumn (line 587) | func (stmt *Statement) SetColumn(name string, value interface{}, fromC... method Changed (line 643) | func (stmt *Statement) Changed(fields ...string) bool { method SelectAndOmitColumns (line 715) | func (stmt *Statement) SelectAndOmitColumns(requireCreate, requireUpda... type join (line 53) | type join struct type StatementModifier (line 65) | type StatementModifier interface FILE: statement_test.go function TestWhereCloneCorruption (line 11) | func TestWhereCloneCorruption(t *testing.T) { function TestNilCondition (line 38) | func TestNilCondition(t *testing.T) { function TestNameMatcher (line 45) | func TestNameMatcher(t *testing.T) { FILE: tests/association_generics_test.go function TestClauseAssociationSetCreateWithOpCreate (line 15) | func TestClauseAssociationSetCreateWithOpCreate(t *testing.T) { function TestClauseAssociationSetUpdateWithOpCreate (line 56) | func TestClauseAssociationSetUpdateWithOpCreate(t *testing.T) { function TestClauseAssociationSetCreateWithMultipleAssociations (line 112) | func TestClauseAssociationSetCreateWithMultipleAssociations(t *testing.T) { function TestClauseAssociationSetUpdateWithMultipleAssociations (line 162) | func TestClauseAssociationSetUpdateWithMultipleAssociations(t *testing.T) { function TestClauseAssociationSetUpdateWithOpUnlink (line 219) | func TestClauseAssociationSetUpdateWithOpUnlink(t *testing.T) { function TestClauseAssociationSetUpdateWithOpCreateValues (line 281) | func TestClauseAssociationSetUpdateWithOpCreateValues(t *testing.T) { function TestClauseAssociationSetCreateWithManyToMany (line 325) | func TestClauseAssociationSetCreateWithManyToMany(t *testing.T) { function TestClauseAssociationSetCreateWithBelongsTo (line 371) | func TestClauseAssociationSetCreateWithBelongsTo(t *testing.T) { function TestClauseAssociationSetUpdateBelongsToCreateValues (line 406) | func TestClauseAssociationSetUpdateBelongsToCreateValues(t *testing.T) { function TestClauseAssociationSetUpdateMixedFieldAndAssociation (line 431) | func TestClauseAssociationSetUpdateMixedFieldAndAssociation(t *testing.T) { function TestClauseAssociationSetUpdateHasOneUnlink (line 463) | func TestClauseAssociationSetUpdateHasOneUnlink(t *testing.T) { function TestClauseAssociationSetUpdateManyToManyCreateWithSet (line 488) | func TestClauseAssociationSetUpdateManyToManyCreateWithSet(t *testing.T) { function TestClauseAssociationSetUpdateManyToManyClear (line 509) | func TestClauseAssociationSetUpdateManyToManyClear(t *testing.T) { function TestClauseAssociationSetUpdatePolymorphicTools (line 534) | func TestClauseAssociationSetUpdatePolymorphicTools(t *testing.T) { function TestClauseAssociationSetUpdateInvalidAssociation (line 559) | func TestClauseAssociationSetUpdateInvalidAssociation(t *testing.T) { function TestClauseAssociationSetUpdateNoOwnerMatch (line 573) | func TestClauseAssociationSetUpdateNoOwnerMatch(t *testing.T) { function TestClauseAssociationSetUpdateAndDelete (line 584) | func TestClauseAssociationSetUpdateAndDelete(t *testing.T) { function TestClauseAssociationSetUpdateAndDeleteHasOne (line 615) | func TestClauseAssociationSetUpdateAndDeleteHasOne(t *testing.T) { function TestAssociationMany2ManyAppendMap_GenericFile (line 644) | func TestAssociationMany2ManyAppendMap_GenericFile(t *testing.T) { function TestClauseAssociationSetUpdateAndDeleteBelongsTo (line 668) | func TestClauseAssociationSetUpdateAndDeleteBelongsTo(t *testing.T) { function TestClauseAssociationSetUpdateAndDeleteMany2Many (line 717) | func TestClauseAssociationSetUpdateAndDeleteMany2Many(t *testing.T) { function TestClauseAssociationSetUpdateAndDeleteManyOwnersHasMany (line 760) | func TestClauseAssociationSetUpdateAndDeleteManyOwnersHasMany(t *testing... function TestClauseAssociationSetUpdateAndDeleteManyOwnersBelongsTo (line 803) | func TestClauseAssociationSetUpdateAndDeleteManyOwnersBelongsTo(t *testi... function TestClauseAssociationSetUpdateAndDeleteManyOwnersMany2Many (line 869) | func TestClauseAssociationSetUpdateAndDeleteManyOwnersMany2Many(t *testi... function TestClauseAssociationSetUpdateHasOneCreateValues (line 913) | func TestClauseAssociationSetUpdateHasOneCreateValues(t *testing.T) { function TestClauseAssociationSetUpdateHasManyClear (line 945) | func TestClauseAssociationSetUpdateHasManyClear(t *testing.T) { function TestClauseAssociationSetUpdateManyToManyUnlink (line 966) | func TestClauseAssociationSetUpdateManyToManyUnlink(t *testing.T) { function TestClauseAssociationSetUpdatePolymorphicCreate (line 999) | func TestClauseAssociationSetUpdatePolymorphicCreate(t *testing.T) { function TestClauseAssociationSetUpdateMultipleOwners (line 1021) | func TestClauseAssociationSetUpdateMultipleOwners(t *testing.T) { FILE: tests/associations_belongs_to_test.go function TestBelongsToAssociation (line 10) | func TestBelongsToAssociation(t *testing.T) { function TestBelongsToAssociationForSlice (line 146) | func TestBelongsToAssociationForSlice(t *testing.T) { function TestBelongsToDefaultValue (line 230) | func TestBelongsToDefaultValue(t *testing.T) { function TestBelongsToAssociationUnscoped (line 255) | func TestBelongsToAssociationUnscoped(t *testing.T) { FILE: tests/associations_has_many_test.go function TestHasManyAssociation (line 10) | func TestHasManyAssociation(t *testing.T) { function TestSingleTableHasManyAssociation (line 122) | func TestSingleTableHasManyAssociation(t *testing.T) { function TestHasManyAssociationForSlice (line 217) | func TestHasManyAssociationForSlice(t *testing.T) { function TestSingleTableHasManyAssociationForSlice (line 271) | func TestSingleTableHasManyAssociationForSlice(t *testing.T) { function TestPolymorphicHasManyAssociation (line 327) | func TestPolymorphicHasManyAssociation(t *testing.T) { function TestPolymorphicHasManyAssociationForSlice (line 422) | func TestPolymorphicHasManyAssociationForSlice(t *testing.T) { function TestHasManyAssociationUnscoped (line 485) | func TestHasManyAssociationUnscoped(t *testing.T) { function TestHasManyAssociationReplaceWithStructValue (line 558) | func TestHasManyAssociationReplaceWithStructValue(t *testing.T) { FILE: tests/associations_has_one_test.go function TestHasOneAssociation (line 9) | func TestHasOneAssociation(t *testing.T) { function TestHasOneAssociationWithSelect (line 86) | func TestHasOneAssociationWithSelect(t *testing.T) { function TestHasOneAssociationForSlice (line 100) | func TestHasOneAssociationForSlice(t *testing.T) { function TestPolymorphicHasOneAssociation (line 141) | func TestPolymorphicHasOneAssociation(t *testing.T) { function TestPolymorphicHasOneAssociationForSlice (line 218) | func TestPolymorphicHasOneAssociationForSlice(t *testing.T) { function TestHasOneAssociationReplaceWithNonValidValue (line 259) | func TestHasOneAssociationReplaceWithNonValidValue(t *testing.T) { FILE: tests/associations_many2many_test.go function TestMany2ManyAssociation (line 13) | func TestMany2ManyAssociation(t *testing.T) { function TestMany2ManyOmitAssociations (line 100) | func TestMany2ManyOmitAssociations(t *testing.T) { function TestMany2ManyAssociationForSlice (line 129) | func TestMany2ManyAssociationForSlice(t *testing.T) { function TestSingleTableMany2ManyAssociation (line 199) | func TestSingleTableMany2ManyAssociation(t *testing.T) { function TestSingleTableMany2ManyAssociationForSlice (line 280) | func TestSingleTableMany2ManyAssociationForSlice(t *testing.T) { function TestDuplicateMany2ManyAssociation (line 334) | func TestDuplicateMany2ManyAssociation(t *testing.T) { function TestConcurrentMany2ManyAssociation (line 360) | func TestConcurrentMany2ManyAssociation(t *testing.T) { function TestMany2ManyDuplicateBelongsToAssociation (line 397) | func TestMany2ManyDuplicateBelongsToAssociation(t *testing.T) { FILE: tests/associations_test.go function AssertAssociationCount (line 12) | func AssertAssociationCount(t *testing.T, data interface{}, name string,... function TestInvalidAssociation (line 31) | func TestInvalidAssociation(t *testing.T) { function TestAssociationNotNullClear (line 38) | func TestAssociationNotNullClear(t *testing.T) { function TestForeignKeyConstraints (line 73) | func TestForeignKeyConstraints(t *testing.T) { function TestForeignKeyConstraintsBelongsTo (line 130) | func TestForeignKeyConstraintsBelongsTo(t *testing.T) { function TestFullSaveAssociations (line 186) | func TestFullSaveAssociations(t *testing.T) { function TestSaveBelongsCircularReference (line 230) | func TestSaveBelongsCircularReference(t *testing.T) { function TestSaveHasManyCircularReference (line 251) | func TestSaveHasManyCircularReference(t *testing.T) { function TestAssociationError (line 271) | func TestAssociationError(t *testing.T) { type myType (line 295) | type myType method QueryClauses (line 301) | func (myType) QueryClauses(f *schema.Field) []clause.Interface { type emptyQueryClause (line 296) | type emptyQueryClause struct method Name (line 305) | func (sd emptyQueryClause) Name() string { method Build (line 309) | func (sd emptyQueryClause) Build(clause.Builder) { method MergeClause (line 312) | func (sd emptyQueryClause) MergeClause(*clause.Clause) { method ModifyStatement (line 315) | func (sd emptyQueryClause) ModifyStatement(stmt *gorm.Statement) { function TestAssociationEmptyQueryClause (line 319) | func TestAssociationEmptyQueryClause(t *testing.T) { type AssociationEmptyUser (line 356) | type AssociationEmptyUser struct type AssociationEmptyPet (line 362) | type AssociationEmptyPet struct function TestAssociationEmptyPrimaryKey (line 367) | func TestAssociationEmptyPrimaryKey(t *testing.T) { function TestAssociationMany2ManyAppendMap (line 399) | func TestAssociationMany2ManyAppendMap(t *testing.T) { function TestAssociationMany2ManyReplaceMap (line 438) | func TestAssociationMany2ManyReplaceMap(t *testing.T) { FILE: tests/benchmark_test.go function BenchmarkCreate (line 10) | func BenchmarkCreate(b *testing.B) { function BenchmarkFind (line 19) | func BenchmarkFind(b *testing.B) { function BenchmarkScan (line 28) | func BenchmarkScan(b *testing.B) { function BenchmarkScanSlice (line 39) | func BenchmarkScanSlice(b *testing.B) { function BenchmarkScanSlicePointer (line 53) | func BenchmarkScanSlicePointer(b *testing.B) { function BenchmarkUpdate (line 67) | func BenchmarkUpdate(b *testing.B) { function BenchmarkDelete (line 76) | func BenchmarkDelete(b *testing.B) { FILE: tests/callbacks_test.go function assertCallbacks (line 13) | func assertCallbacks(v interface{}, fnames []string) (result bool, msg s... function getFuncName (line 26) | func getFuncName(fc interface{}) string { function c1 (line 36) | func c1(*gorm.DB) {} function c2 (line 37) | func c2(*gorm.DB) {} function c3 (line 38) | func c3(*gorm.DB) {} function c4 (line 39) | func c4(*gorm.DB) {} function c5 (line 40) | func c5(*gorm.DB) {} function c6 (line 41) | func c6(*gorm.DB) {} function TestCallbacks (line 43) | func TestCallbacks(t *testing.T) { function TestPluginCallbacks (line 176) | func TestPluginCallbacks(t *testing.T) { function TestCallbacksGet (line 210) | func TestCallbacksGet(t *testing.T) { function TestCallbacksRemove (line 225) | func TestCallbacksRemove(t *testing.T) { FILE: tests/chainable_api_test.go type testDialector (line 13) | type testDialector struct method Name (line 15) | func (d testDialector) Name() string ... method Initialize (line 16) | func (d testDialector) Initialize(*gorm.DB) error ... method Migrator (line 17) | func (d testDialector) Migrator(db *gorm.DB) gorm.Migrator ... method DataTypeOf (line 18) | func (d testDialector) DataTypeOf(*schema.Field) string ... method DefaultValueOf (line 19) | func (d testDialector) DefaultValueOf(*schema.Field) clause.Expression... method BindVarTo (line 20) | func (d testDialector) BindVarTo(writer clause.Writer, stmt *gorm.Stat... method QuoteTo (line 24) | func (d testDialector) QuoteTo(writer clause.Writer, s string) ... method Explain (line 25) | func (d testDialector) Explain(sql string, vars ...interface{}) string... function newTestDB (line 28) | func newTestDB() *gorm.DB { function TestChainableAPI (line 43) | func TestChainableAPI(t *testing.T) { FILE: tests/connection_test.go function TestWithSingleConnection (line 10) | func TestWithSingleConnection(t *testing.T) { function getSetSQL (line 38) | func getSetSQL(driverName string) (string, string) { FILE: tests/connpool_test.go type wrapperTx (line 15) | type wrapperTx struct method PrepareContext (line 20) | func (c *wrapperTx) PrepareContext(ctx context.Context, query string) ... method ExecContext (line 25) | func (c *wrapperTx) ExecContext(ctx context.Context, query string, arg... method QueryContext (line 30) | func (c *wrapperTx) QueryContext(ctx context.Context, query string, ar... method QueryRowContext (line 35) | func (c *wrapperTx) QueryRowContext(ctx context.Context, query string,... type wrapperConnPool (line 40) | type wrapperConnPool struct method Ping (line 46) | func (c *wrapperConnPool) Ping() error { method BeginTx (line 57) | func (c *wrapperConnPool) BeginTx(ctx context.Context, opts *sql.TxOpt... method PrepareContext (line 65) | func (c *wrapperConnPool) PrepareContext(ctx context.Context, query st... method ExecContext (line 70) | func (c *wrapperConnPool) ExecContext(ctx context.Context, query strin... method QueryContext (line 75) | func (c *wrapperConnPool) QueryContext(ctx context.Context, query stri... method QueryRowContext (line 80) | func (c *wrapperConnPool) QueryRowContext(ctx context.Context, query s... function TestConnPoolWrapper (line 85) | func TestConnPoolWrapper(t *testing.T) { FILE: tests/count_test.go function TestCountWithGroup (line 13) | func TestCountWithGroup(t *testing.T) { function TestCount (line 39) | func TestCount(t *testing.T) { FILE: tests/create_test.go function TestCreate (line 16) | func TestCreate(t *testing.T) { function TestCreateInBatches (line 62) | func TestCreateInBatches(t *testing.T) { function TestCreateInBatchesWithDefaultSize (line 91) | func TestCreateInBatchesWithDefaultSize(t *testing.T) { function TestCreateFromMap (line 120) | func TestCreateFromMap(t *testing.T) { function TestCreateWithAssociations (line 159) | func TestCreateWithAssociations(t *testing.T) { function TestBulkCreateWithAssociations (line 182) | func TestBulkCreateWithAssociations(t *testing.T) { function TestBulkCreatePtrDataWithAssociations (line 213) | func TestBulkCreatePtrDataWithAssociations(t *testing.T) { function TestPolymorphicHasOne (line 242) | func TestPolymorphicHasOne(t *testing.T) { function TestCreateEmptyStruct (line 353) | func TestCreateEmptyStruct(t *testing.T) { function TestCreateEmptySlice (line 368) | func TestCreateEmptySlice(t *testing.T) { function TestCreateInvalidSlice (line 380) | func TestCreateInvalidSlice(t *testing.T) { function TestCreateWithExistingTimestamp (line 392) | func TestCreateWithExistingTimestamp(t *testing.T) { function TestCreateWithNowFuncOverride (line 409) | func TestCreateWithNowFuncOverride(t *testing.T) { function TestCreateWithNoGORMPrimaryKey (line 431) | func TestCreateWithNoGORMPrimaryKey(t *testing.T) { function TestSelectWithCreate (line 449) | func TestSelectWithCreate(t *testing.T) { function TestOmitWithCreate (line 465) | func TestOmitWithCreate(t *testing.T) { function TestFirstOrCreateNotExistsTable (line 497) | func TestFirstOrCreateNotExistsTable(t *testing.T) { function TestFirstOrCreateWithPrimaryKey (line 504) | func TestFirstOrCreateWithPrimaryKey(t *testing.T) { function TestCreateFromSubQuery (line 523) | func TestCreateFromSubQuery(t *testing.T) { function TestCreateNilPointer (line 546) | func TestCreateNilPointer(t *testing.T) { function TestFirstOrCreateRowsAffected (line 555) | func TestFirstOrCreateRowsAffected(t *testing.T) { function TestCreateWithAutoIncrementCompositeKey (line 569) | func TestCreateWithAutoIncrementCompositeKey(t *testing.T) { function TestCreateOnConflictWithDefaultNull (line 601) | func TestCreateOnConflictWithDefaultNull(t *testing.T) { function TestCreateFromMapWithoutPK (line 637) | func TestCreateFromMapWithoutPK(t *testing.T) { function TestCreateFromMapWithTable (line 732) | func TestCreateFromMapWithTable(t *testing.T) { FILE: tests/customize_field_test.go function TestCustomizeColumn (line 11) | func TestCustomizeColumn(t *testing.T) { function TestCustomColumnAndIgnoredFieldClash (line 46) | func TestCustomColumnAndIgnoredFieldClash(t *testing.T) { function TestCustomizeField (line 61) | func TestCustomizeField(t *testing.T) { FILE: tests/default_value_test.go function TestDefaultValue (line 10) | func TestDefaultValue(t *testing.T) { FILE: tests/delete_test.go function TestDelete (line 12) | func TestDelete(t *testing.T) { function TestDeleteWithTable (line 61) | func TestDeleteWithTable(t *testing.T) { function TestInlineCondDelete (line 104) | func TestInlineCondDelete(t *testing.T) { function TestBlockGlobalDelete (line 122) | func TestBlockGlobalDelete(t *testing.T) { function TestDeleteWithAssociations (line 132) | func TestDeleteWithAssociations(t *testing.T) { function TestDeleteAssociationsWithUnscoped (line 156) | func TestDeleteAssociationsWithUnscoped(t *testing.T) { function TestDeleteSliceWithAssociations (line 180) | func TestDeleteSliceWithAssociations(t *testing.T) { function TestSoftDeleteReturning (line 210) | func TestSoftDeleteReturning(t *testing.T) { function TestDeleteReturning (line 235) | func TestDeleteReturning(t *testing.T) { FILE: tests/distinct_test.go function TestDistinct (line 11) | func TestDistinct(t *testing.T) { FILE: tests/embedded_struct_test.go function TestEmbeddedStruct (line 15) | func TestEmbeddedStruct(t *testing.T) { function TestEmbeddedPointerTypeStruct (line 101) | func TestEmbeddedPointerTypeStruct(t *testing.T) { type Content (line 188) | type Content struct method Value (line 192) | func (c Content) Value() (driver.Value, error) { method Scan (line 198) | func (c *Content) Scan(src interface{}) error { function TestEmbeddedScanValuer (line 220) | func TestEmbeddedScanValuer(t *testing.T) { function TestEmbeddedRelations (line 238) | func TestEmbeddedRelations(t *testing.T) { function TestEmbeddedTagSetting (line 260) | func TestEmbeddedTagSetting(t *testing.T) { FILE: tests/error_translator_test.go function TestDialectorWithErrorTranslatorSupport (line 11) | func TestDialectorWithErrorTranslatorSupport(t *testing.T) { function TestSupportedDialectorWithErrDuplicatedKey (line 31) | func TestSupportedDialectorWithErrDuplicatedKey(t *testing.T) { function TestSupportedDialectorWithErrForeignKeyViolated (line 64) | func TestSupportedDialectorWithErrForeignKeyViolated(t *testing.T) { FILE: tests/gaussdb_test.go function TestGaussDBReturningIDWhichHasStringType (line 14) | func TestGaussDBReturningIDWhichHasStringType(t *testing.T) { function TestGaussDB (line 66) | func TestGaussDB(t *testing.T) { function TestGaussDBMany2ManyWithDefaultValueUUID (line 160) | func TestGaussDBMany2ManyWithDefaultValueUUID(t *testing.T) { function TestGaussDBOnConstraint (line 186) | func TestGaussDBOnConstraint(t *testing.T) { function TestGaussDBAlterColumnDataType (line 237) | func TestGaussDBAlterColumnDataType(t *testing.T) { FILE: tests/generics_test.go function TestGenericsCreate (line 22) | func TestGenericsCreate(t *testing.T) { function TestGenericsCreateInBatches (line 104) | func TestGenericsCreateInBatches(t *testing.T) { function TestGenericsExecAndUpdate (line 146) | func TestGenericsExecAndUpdate(t *testing.T) { function TestGenericsRow (line 192) | func TestGenericsRow(t *testing.T) { function TestGenericsDelete (line 272) | func TestGenericsDelete(t *testing.T) { function TestGenericsFindInBatches (line 294) | func TestGenericsFindInBatches(t *testing.T) { function TestGenericsScopes (line 326) | func TestGenericsScopes(t *testing.T) { function TestGenericsJoins (line 362) | func TestGenericsJoins(t *testing.T) { function TestGenericsNestedJoins (line 461) | func TestGenericsNestedJoins(t *testing.T) { function TestGenericsPreloads (line 537) | func TestGenericsPreloads(t *testing.T) { function TestGenericsNestedPreloads (line 658) | func TestGenericsNestedPreloads(t *testing.T) { function TestGenericsDistinct (line 709) | func TestGenericsDistinct(t *testing.T) { function TestGenericsSetCreate (line 741) | func TestGenericsSetCreate(t *testing.T) { function TestGenericsSetUpdate (line 764) | func TestGenericsSetUpdate(t *testing.T) { function TestGenericsGroupHaving (line 799) | func TestGenericsGroupHaving(t *testing.T) { function TestGenericsSubQuery (line 823) | func TestGenericsSubQuery(t *testing.T) { function TestGenericsUpsert (line 855) | func TestGenericsUpsert(t *testing.T) { function TestGenericsWithResult (line 892) | func TestGenericsWithResult(t *testing.T) { function TestGenericsReuse (line 907) | func TestGenericsReuse(t *testing.T) { function TestGenericsWithTransaction (line 946) | func TestGenericsWithTransaction(t *testing.T) { function TestGenericsToSQL (line 977) | func TestGenericsToSQL(t *testing.T) { function TestGenericsScanUUID (line 989) | func TestGenericsScanUUID(t *testing.T) { function TestGenericsCount (line 1011) | func TestGenericsCount(t *testing.T) { function TestGenericsUpdate (line 1021) | func TestGenericsUpdate(t *testing.T) { function TestGenericsUpdates (line 1031) | func TestGenericsUpdates(t *testing.T) { function TestGenericsDeleteAPI (line 1041) | func TestGenericsDeleteAPI(t *testing.T) { function TestGenericsAssociation (line 1051) | func TestGenericsAssociation(t *testing.T) { function TestGenericsAssociationSlice (line 1101) | func TestGenericsAssociationSlice(t *testing.T) { FILE: tests/gorm_test.go function TestOpen (line 11) | func TestOpen(t *testing.T) { function TestReturningWithNullToZeroValues (line 19) | func TestReturningWithNullToZeroValues(t *testing.T) { FILE: tests/group_by_test.go function TestGroupBy (line 9) | func TestGroupBy(t *testing.T) { FILE: tests/helper_test.go type Config (line 16) | type Config struct function GetUser (line 29) | func GetUser(name string, config Config) *User { function CheckPetUnscoped (line 84) | func CheckPetUnscoped(t *testing.T, pet Pet, expect Pet) { function CheckPet (line 88) | func CheckPet(t *testing.T, pet Pet, expect Pet) { function doCheckPet (line 92) | func doCheckPet(t *testing.T, pet Pet, expect Pet, unscoped bool) { function CheckUserUnscoped (line 112) | func CheckUserUnscoped(t *testing.T, user User, expect User) { function CheckUser (line 116) | func CheckUser(t *testing.T, user User, expect User) { function doCheckUser (line 120) | func doCheckUser(t *testing.T, user User, expect User, unscoped bool) { function tidbSkip (line 270) | func tidbSkip(t *testing.T, reason string) { function isTiDB (line 276) | func isTiDB() bool { function isMysql (line 280) | func isMysql() bool { function isSqlite (line 284) | func isSqlite() bool { function db (line 288) | func db(unscoped bool) *gorm.DB { FILE: tests/hooks_test.go type Product (line 15) | type Product struct method BeforeCreate (line 31) | func (s *Product) BeforeCreate(tx *gorm.DB) (err error) { method BeforeUpdate (line 39) | func (s *Product) BeforeUpdate(tx *gorm.DB) (err error) { method BeforeSave (line 47) | func (s *Product) BeforeSave(tx *gorm.DB) (err error) { method AfterFind (line 55) | func (s *Product) AfterFind(tx *gorm.DB) (err error) { method AfterCreate (line 60) | func (s *Product) AfterCreate(tx *gorm.DB) (err error) { method AfterUpdate (line 64) | func (s *Product) AfterUpdate(tx *gorm.DB) (err error) { method AfterSave (line 69) | func (s *Product) AfterSave(tx *gorm.DB) (err error) { method BeforeDelete (line 77) | func (s *Product) BeforeDelete(tx *gorm.DB) (err error) { method AfterDelete (line 85) | func (s *Product) AfterDelete(tx *gorm.DB) (err error) { method GetCallTimes (line 93) | func (s *Product) GetCallTimes() []int64 { function TestRunCallbacks (line 97) | func TestRunCallbacks(t *testing.T) { function TestCallbacksWithErrors (line 149) | func TestCallbacksWithErrors(t *testing.T) { type Product2 (line 215) | type Product2 struct method BeforeCreate (line 223) | func (s Product2) BeforeCreate(tx *gorm.DB) (err error) { method BeforeUpdate (line 238) | func (s *Product2) BeforeUpdate(tx *gorm.DB) (err error) { function TestUseDBInHooks (line 243) | func TestUseDBInHooks(t *testing.T) { type Product3 (line 300) | type Product3 struct method BeforeCreate (line 308) | func (s Product3) BeforeCreate(tx *gorm.DB) (err error) { method BeforeUpdate (line 313) | func (s Product3) BeforeUpdate(tx *gorm.DB) (err error) { function TestSetColumn (line 325) | func TestSetColumn(t *testing.T) { function TestHooksForSlice (line 409) | func TestHooksForSlice(t *testing.T) { type Product4 (line 460) | type Product4 struct type ProductItem (line 469) | type ProductItem struct method BeforeCreate (line 476) | func (pi ProductItem) BeforeCreate(*gorm.DB) error { method AfterFind (line 483) | func (pi *ProductItem) AfterFind(*gorm.DB) error { function TestFailedToSaveAssociationShouldRollback (line 488) | func TestFailedToSaveAssociationShouldRollback(t *testing.T) { type Product5 (line 520) | type Product5 struct method BeforeUpdate (line 527) | func (p *Product5) BeforeUpdate(*gorm.DB) error { function TestUpdateCallbacks (line 532) | func TestUpdateCallbacks(t *testing.T) { type Product6 (line 572) | type Product6 struct method BeforeDelete (line 583) | func (p *Product6) BeforeDelete(tx *gorm.DB) error { type ProductItem2 (line 578) | type ProductItem2 struct function TestPropagateUnscoped (line 590) | func TestPropagateUnscoped(t *testing.T) { FILE: tests/joins_table_test.go type Person (line 11) | type Person struct type Address (line 18) | type Address struct type PersonAddress (line 23) | type PersonAddress struct function TestOverrideJoinTable (line 30) | func TestOverrideJoinTable(t *testing.T) { FILE: tests/joins_test.go function TestJoins (line 14) | func TestJoins(t *testing.T) { function TestJoinsForSlice (line 27) | func TestJoinsForSlice(t *testing.T) { function TestJoinConds (line 61) | func TestJoinConds(t *testing.T) { function TestJoinOn (line 115) | func TestJoinOn(t *testing.T) { function TestJoinsWithSelect (line 136) | func TestJoinsWithSelect(t *testing.T) { function TestJoinWithOmit (line 163) | func TestJoinWithOmit(t *testing.T) { function TestJoinCount (line 179) | func TestJoinCount(t *testing.T) { function TestJoinWithSoftDeleted (line 208) | func TestJoinWithSoftDeleted(t *testing.T) { function TestInnerJoins (line 237) | func TestInnerJoins(t *testing.T) { function TestJoinWithSameColumnName (line 259) | func TestJoinWithSameColumnName(t *testing.T) { function TestJoinArgsWithDB (line 290) | func TestJoinArgsWithDB(t *testing.T) { function TestNestedJoins (line 333) | func TestNestedJoins(t *testing.T) { function TestJoinsPreload_Issue7013 (line 408) | func TestJoinsPreload_Issue7013(t *testing.T) { function TestJoinsPreload_Issue7013_RelationEmpty (line 428) | func TestJoinsPreload_Issue7013_RelationEmpty(t *testing.T) { function TestJoinsPreload_Issue7013_NoEntries (line 467) | func TestJoinsPreload_Issue7013_NoEntries(t *testing.T) { FILE: tests/lru_test.go function TestLRU_Add_ExistingKey_UpdatesValueAndExpiresAt (line 16) | func TestLRU_Add_ExistingKey_UpdatesValueAndExpiresAt(t *testing.T) { function TestLRU_Add_NewKey_AddsEntry (line 26) | func TestLRU_Add_NewKey_AddsEntry(t *testing.T) { function TestLRU_Add_ExceedsSize_RemovesOldest (line 35) | func TestLRU_Add_ExceedsSize_RemovesOldest(t *testing.T) { function TestLRU_Add_UnlimitedSize_NoEviction (line 46) | func TestLRU_Add_UnlimitedSize_NoEviction(t *testing.T) { function TestLRU_Add_Eviction (line 57) | func TestLRU_Add_Eviction(t *testing.T) { function BenchmarkLRU_Rand_NoExpire (line 69) | func BenchmarkLRU_Rand_NoExpire(b *testing.B) { function BenchmarkLRU_Freq_NoExpire (line 94) | func BenchmarkLRU_Freq_NoExpire(b *testing.B) { function BenchmarkLRU_Rand_WithExpire (line 122) | func BenchmarkLRU_Rand_WithExpire(b *testing.B) { function BenchmarkLRU_Freq_WithExpire (line 147) | func BenchmarkLRU_Freq_WithExpire(b *testing.B) { function TestLRUNoPurge (line 175) | func TestLRUNoPurge(t *testing.T) { function TestLRUEdgeCases (line 222) | func TestLRUEdgeCases(t *testing.T) { function TestLRU_Values (line 243) | func TestLRU_Values(t *testing.T) { function TestLRUWithPurge (line 263) | func TestLRUWithPurge(t *testing.T) { function TestLRUWithPurgeEnforcedBySize (line 328) | func TestLRUWithPurgeEnforcedBySize(t *testing.T) { function TestLRUConcurrency (line 351) | func TestLRUConcurrency(t *testing.T) { function TestLRUInvalidateAndEvict (line 367) | func TestLRUInvalidateAndEvict(t *testing.T) { function TestLoadingExpired (line 398) | func TestLoadingExpired(t *testing.T) { function TestLRURemoveOldest (line 454) | func TestLRURemoveOldest(t *testing.T) { function getRand (line 524) | func getRand(tb testing.TB) int64 { FILE: tests/main_test.go function TestExceptionsWithInvalidSql (line 9) | func TestExceptionsWithInvalidSql(t *testing.T) { function TestSetAndGet (line 43) | func TestSetAndGet(t *testing.T) { FILE: tests/migrate_test.go function TestMigrate (line 26) | func TestMigrate(t *testing.T) { function TestAutoMigrateInt8PGAndGaussDB (line 86) | func TestAutoMigrateInt8PGAndGaussDB(t *testing.T) { function TestAutoMigrateSelfReferential (line 124) | func TestAutoMigrateSelfReferential(t *testing.T) { function TestAutoMigrateNullable (line 143) | func TestAutoMigrateNullable(t *testing.T) { function TestSmartMigrateColumn (line 185) | func TestSmartMigrateColumn(t *testing.T) { function TestSmartMigrateColumnGaussDB (line 272) | func TestSmartMigrateColumnGaussDB(t *testing.T) { function TestMigrateWithColumnComment (line 359) | func TestMigrateWithColumnComment(t *testing.T) { function TestMigrateWithIndexComment (line 374) | func TestMigrateWithIndexComment(t *testing.T) { function TestMigrateWithUniqueIndex (line 393) | func TestMigrateWithUniqueIndex(t *testing.T) { function TestMigrateTable (line 423) | func TestMigrateTable(t *testing.T) { function TestMigrateWithQuotedIndex (line 456) | func TestMigrateWithQuotedIndex(t *testing.T) { function TestMigrateIndexes (line 475) | func TestMigrateIndexes(t *testing.T) { function TestTiDBMigrateColumns (line 525) | func TestTiDBMigrateColumns(t *testing.T) { function TestMigrateColumns (line 664) | func TestMigrateColumns(t *testing.T) { function TestMigrateConstraint (line 804) | func TestMigrateConstraint(t *testing.T) { type DynamicUser (line 830) | type DynamicUser struct function TestMigrateIndexesWithDynamicTableName (line 838) | func TestMigrateIndexesWithDynamicTableName(t *testing.T) { function TestMigrateColumnOrder (line 871) | func TestMigrateColumnOrder(t *testing.T) { function TestMigrateSerialColumn (line 940) | func TestMigrateSerialColumn(t *testing.T) { function TestMigrateWithSpecialName (line 1002) | func TestMigrateWithSpecialName(t *testing.T) { function TestMigrateAutoIncrement (line 1023) | func TestMigrateAutoIncrement(t *testing.T) { function TestPrimarykeyID (line 1065) | func TestPrimarykeyID(t *testing.T) { function TestPrimarykeyIDGaussDB (line 1100) | func TestPrimarykeyIDGaussDB(t *testing.T) { function TestCurrentTimestamp (line 1136) | func TestCurrentTimestamp(t *testing.T) { function TestUniqueColumn (line 1163) | func TestUniqueColumn(t *testing.T) { function findColumnType (line 1283) | func findColumnType(dest interface{}, columnName string) ( function TestInvalidCachedPlanSimpleProtocol (line 1301) | func TestInvalidCachedPlanSimpleProtocol(t *testing.T) { function TestInvalidCachedPlanSimpleProtocolGaussDB (line 1337) | func TestInvalidCachedPlanSimpleProtocolGaussDB(t *testing.T) { function TestDifferentTypeWithoutDeclaredLength (line 1373) | func TestDifferentTypeWithoutDeclaredLength(t *testing.T) { function TestMigrateArrayTypeModel (line 1412) | func TestMigrateArrayTypeModel(t *testing.T) { type mockMigrator (line 1448) | type mockMigrator struct method AlterColumn (line 1452) | func (mm mockMigrator) AlterColumn(dst interface{}, field string) error { function TestMigrateDonotAlterColumn (line 1460) | func TestMigrateDonotAlterColumn(t *testing.T) { function TestMigrateSameEmbeddedFieldName (line 1492) | func TestMigrateSameEmbeddedFieldName(t *testing.T) { function TestMigrateWithDefaultValue (line 1530) | func TestMigrateWithDefaultValue(t *testing.T) { function TestMigrateMySQLWithCustomizedTypes (line 1605) | func TestMigrateMySQLWithCustomizedTypes(t *testing.T) { function TestMigrateIgnoreRelations (line 1637) | func TestMigrateIgnoreRelations(t *testing.T) { function TestMigrateView (line 1701) | func TestMigrateView(t *testing.T) { function TestMigrateExistingBoolColumnPGAndGaussDB (line 1735) | func TestMigrateExistingBoolColumnPGAndGaussDB(t *testing.T) { function TestTableType (line 1794) | func TestTableType(t *testing.T) { function TestMigrateWithUniqueIndexAndUnique (line 1840) | func TestMigrateWithUniqueIndexAndUnique(t *testing.T) { function testAutoMigrateDecimal (line 2055) | func testAutoMigrateDecimal(t *testing.T, model1, model2 any) []string { function decimalColumnsTest (line 2090) | func decimalColumnsTest[T, T2 any](t *testing.T, expectedSql []string) { function TestAutoMigrateDecimal (line 2111) | func TestAutoMigrateDecimal(t *testing.T) { FILE: tests/multi_primary_keys_test.go type Blog (line 12) | type Blog struct type Tag (line 22) | type Tag struct function compareTags (line 29) | func compareTags(tags []Tag, contents []string) bool { function TestManyToManyWithMultiPrimaryKeys (line 39) | func TestManyToManyWithMultiPrimaryKeys(t *testing.T) { function TestManyToManyWithCustomizedForeignKeys (line 137) | func TestManyToManyWithCustomizedForeignKeys(t *testing.T) { function TestManyToManyWithCustomizedForeignKeys2 (line 265) | func TestManyToManyWithCustomizedForeignKeys2(t *testing.T) { function TestCompositePrimaryKeysAssociations (line 422) | func TestCompositePrimaryKeysAssociations(t *testing.T) { FILE: tests/named_argument_test.go function TestNamedArg (line 12) | func TestNamedArg(t *testing.T) { FILE: tests/named_polymorphic_test.go type Hamster (line 9) | type Hamster struct function TestNamedPolymorphic (line 16) | func TestNamedPolymorphic(t *testing.T) { FILE: tests/non_std_test.go type Animal (line 8) | type Animal struct function TestNonStdPrimaryKeyAndDefaultValues (line 18) | func TestNonStdPrimaryKeyAndDefaultValues(t *testing.T) { FILE: tests/postgres_test.go function TestPostgresReturningIDWhichHasStringType (line 14) | func TestPostgresReturningIDWhichHasStringType(t *testing.T) { function TestPostgres (line 64) | func TestPostgres(t *testing.T) { type Post (line 156) | type Post struct type Category (line 162) | type Category struct function TestMany2ManyWithDefaultValueUUID (line 168) | func TestMany2ManyWithDefaultValueUUID(t *testing.T) { function TestPostgresOnConstraint (line 193) | func TestPostgresOnConstraint(t *testing.T) { type CompanyNew (line 243) | type CompanyNew struct function TestAlterColumnDataType (line 248) | func TestAlterColumnDataType(t *testing.T) { FILE: tests/preload_suits_test.go function toJSONString (line 14) | func toJSONString(v interface{}) []byte { function TestNestedPreload1 (line 19) | func TestNestedPreload1(t *testing.T) { function TestNestedPreload2 (line 61) | func TestNestedPreload2(t *testing.T) { function TestNestedPreload3 (line 113) | func TestNestedPreload3(t *testing.T) { function TestNestedPreload4 (line 156) | func TestNestedPreload4(t *testing.T) { function TestNestedPreload5 (line 202) | func TestNestedPreload5(t *testing.T) { function TestNestedPreload6 (line 245) | func TestNestedPreload6(t *testing.T) { function TestNestedPreload7 (line 317) | func TestNestedPreload7(t *testing.T) { function TestNestedPreload8 (line 371) | func TestNestedPreload8(t *testing.T) { function TestNestedPreload9 (line 428) | func TestNestedPreload9(t *testing.T) { type LevelA1 (line 522) | type LevelA1 struct type LevelA2 (line 527) | type LevelA2 struct type LevelA3 (line 533) | type LevelA3 struct function TestNestedPreload10 (line 542) | func TestNestedPreload10(t *testing.T) { type LevelB1 (line 584) | type LevelB1 struct type LevelB2 (line 590) | type LevelB2 struct type LevelB3 (line 595) | type LevelB3 struct function TestNestedPreload11 (line 603) | func TestNestedPreload11(t *testing.T) { type LevelC1 (line 635) | type LevelC1 struct type LevelC2 (line 641) | type LevelC2 struct type LevelC3 (line 647) | type LevelC3 struct function TestNestedPreload12 (line 654) | func TestNestedPreload12(t *testing.T) { function TestManyToManyPreloadWithMultiPrimaryKeys (line 694) | func TestManyToManyPreloadWithMultiPrimaryKeys(t *testing.T) { function TestManyToManyPreloadForNestedPointer (line 788) | func TestManyToManyPreloadForNestedPointer(t *testing.T) { function TestNestedManyToManyPreload (line 889) | func TestNestedManyToManyPreload(t *testing.T) { function TestNestedManyToManyPreload2 (line 950) | func TestNestedManyToManyPreload2(t *testing.T) { function TestNestedManyToManyPreload3 (line 1005) | func TestNestedManyToManyPreload3(t *testing.T) { function TestNestedManyToManyPreload3ForStruct (line 1077) | func TestNestedManyToManyPreload3ForStruct(t *testing.T) { function TestNestedManyToManyPreload4 (line 1150) | func TestNestedManyToManyPreload4(t *testing.T) { function TestManyToManyPreloadForPointer (line 1204) | func TestManyToManyPreloadForPointer(t *testing.T) { function TestNilPointerSlice (line 1286) | func TestNilPointerSlice(t *testing.T) { function TestNilPointerSlice2 (line 1350) | func TestNilPointerSlice2(t *testing.T) { function TestPrefixedPreloadDuplication (line 1393) | func TestPrefixedPreloadDuplication(t *testing.T) { function TestPreloadManyToManyCallbacks (line 1478) | func TestPreloadManyToManyCallbacks(t *testing.T) { FILE: tests/preload_test.go function TestPreloadWithAssociations (line 18) | func TestPreloadWithAssociations(t *testing.T) { function TestNestedPreload (line 55) | func TestNestedPreload(t *testing.T) { function TestNestedPreloadForSlice (line 79) | func TestNestedPreloadForSlice(t *testing.T) { function TestPreloadWithConds (line 109) | func TestPreloadWithConds(t *testing.T) { function TestNestedPreloadWithConds (line 167) | func TestNestedPreloadWithConds(t *testing.T) { function TestPreloadEmptyData (line 217) | func TestPreloadEmptyData(t *testing.T) { function TestPreloadGoroutine (line 239) | func TestPreloadGoroutine(t *testing.T) { function TestPreloadWithDiffModel (line 257) | func TestPreloadWithDiffModel(t *testing.T) { function TestNestedPreloadWithUnscoped (line 275) | func TestNestedPreloadWithUnscoped(t *testing.T) { function TestNestedPreloadWithNestedJoin (line 312) | func TestNestedPreloadWithNestedJoin(t *testing.T) { function TestMergeNestedPreloadWithNestedJoin (line 389) | func TestMergeNestedPreloadWithNestedJoin(t *testing.T) { function TestNestedPreloadWithPointerJoin (line 443) | func TestNestedPreloadWithPointerJoin(t *testing.T) { function TestEmbedPreload (line 495) | func TestEmbedPreload(t *testing.T) { FILE: tests/prepared_stmt_test.go function TestPreparedStmt (line 14) | func TestPreparedStmt(t *testing.T) { function TestPreparedStmtFromTransaction (line 56) | func TestPreparedStmtFromTransaction(t *testing.T) { function TestPreparedStmtLruFromTransaction (line 94) | func TestPreparedStmtLruFromTransaction(t *testing.T) { function TestPreparedStmtDeadlock (line 153) | func TestPreparedStmtDeadlock(t *testing.T) { function TestPreparedStmtInTransaction (line 188) | func TestPreparedStmtInTransaction(t *testing.T) { function TestPreparedStmtClose (line 204) | func TestPreparedStmtClose(t *testing.T) { function isUsingClosedConnError (line 230) | func isUsingClosedConnError(err error) bool { function TestPreparedStmtConcurrentClose (line 237) | func TestPreparedStmtConcurrentClose(t *testing.T) { FILE: tests/query_test.go function TestFind (line 20) | func TestFind(t *testing.T) { function TestQueryWithAssociation (line 250) | func TestQueryWithAssociation(t *testing.T) { function TestFindInBatches (line 268) | func TestFindInBatches(t *testing.T) { function TestFindInBatchesWithOffsetLimit (line 320) | func TestFindInBatchesWithOffsetLimit(t *testing.T) { function TestFindInBatchesWithError (line 382) | func TestFindInBatchesWithError(t *testing.T) { function TestFillSmallerStruct (line 421) | func TestFillSmallerStruct(t *testing.T) { function TestFillSmallerStructWithAllFields (line 477) | func TestFillSmallerStructWithAllFields(t *testing.T) { function TestNot (line 510) | func TestNot(t *testing.T) { function TestNotWithAllFields (line 569) | func TestNotWithAllFields(t *testing.T) { function TestOr (line 616) | func TestOr(t *testing.T) { function TestOrWithAllFields (line 666) | func TestOrWithAllFields(t *testing.T) { type Int64 (line 687) | type Int64 method Value (line 689) | func (v Int64) Value() (driver.Value, error) { method Scan (line 693) | func (f *Int64) Scan(v interface{}) error { function TestPluck (line 699) | func TestPluck(t *testing.T) { function TestSelect (line 777) | func TestSelect(t *testing.T) { function TestOmit (line 839) | func TestOmit(t *testing.T) { function TestOmitWithAllFields (line 854) | func TestOmitWithAllFields(t *testing.T) { function TestMapColumns (line 878) | func TestMapColumns(t *testing.T) { function TestPluckWithSelect (line 900) | func TestPluckWithSelect(t *testing.T) { function TestSelectWithVariables (line 919) | func TestSelectWithVariables(t *testing.T) { function TestSelectWithArrayInput (line 934) | func TestSelectWithArrayInput(t *testing.T) { function TestCustomizedTypePrimaryKey (line 945) | func TestCustomizedTypePrimaryKey(t *testing.T) { function TestStringPrimaryKeyForNumericValueStartingWithZero (line 979) | func TestStringPrimaryKeyForNumericValueStartingWithZero(t *testing.T) { function TestSearchWithEmptyChain (line 999) | func TestSearchWithEmptyChain(t *testing.T) { function TestOrder (line 1019) | func TestOrder(t *testing.T) { function TestOrderWithAllFields (line 1052) | func TestOrderWithAllFields(t *testing.T) { function TestLimit (line 1077) | func TestLimit(t *testing.T) { function TestOffset (line 1097) | func TestOffset(t *testing.T) { function TestSearchWithMap (line 1116) | func TestSearchWithMap(t *testing.T) { function TestSearchWithStruct (line 1163) | func TestSearchWithStruct(t *testing.T) { function TestSubQuery (line 1187) | func TestSubQuery(t *testing.T) { function TestSubQueryWithRaw (line 1213) | func TestSubQueryWithRaw(t *testing.T) { function TestSubQueryWithHaving (line 1262) | func TestSubQueryWithHaving(t *testing.T) { function TestScanNullValue (line 1280) | func TestScanNullValue(t *testing.T) { function TestQueryWithTableAndConditions (line 1312) | func TestQueryWithTableAndConditions(t *testing.T) { function TestQueryWithTableAndConditionsAndAllFields (line 1320) | func TestQueryWithTableAndConditionsAndAllFields(t *testing.T) { type DoubleInt64 (line 1330) | type DoubleInt64 struct method Scan (line 1334) | func (t *DoubleInt64) Scan(val interface{}) error { function TestQueryScannerWithSingleColumn (line 1345) | func TestQueryScannerWithSingleColumn(t *testing.T) { function TestQueryResetNullValue (line 1366) | func TestQueryResetNullValue(t *testing.T) { function TestQueryError (line 1443) | func TestQueryError(t *testing.T) { function TestQueryScanToArray (line 1457) | func TestQueryScanToArray(t *testing.T) { FILE: tests/scan_test.go type PersonAddressInfo (line 14) | type PersonAddressInfo struct function TestScan (line 19) | func TestScan(t *testing.T) { function TestScanRows (line 122) | func TestScanRows(t *testing.T) { function TestScanRowsNullValuesScanToFieldDefault (line 166) | func TestScanRowsNullValuesScanToFieldDefault(t *testing.T) { function TestScanToEmbedded (line 264) | func TestScanToEmbedded(t *testing.T) { FILE: tests/scanner_valuer_test.go function TestScannerValuer (line 21) | func TestScannerValuer(t *testing.T) { function TestScannerValuerWithFirstOrCreate (line 68) | func TestScannerValuerWithFirstOrCreate(t *testing.T) { function TestInvalidValuer (line 111) | func TestInvalidValuer(t *testing.T) { type ScannerValuerStruct (line 143) | type ScannerValuerStruct struct type EncryptedData (line 165) | type EncryptedData method Scan (line 167) | func (data *EncryptedData) Scan(value interface{}) error { method Value (line 183) | func (data EncryptedData) Value() (driver.Value, error) { type Num (line 193) | type Num method Scan (line 195) | func (i *Num) Scan(src interface{}) error { type StringsSlice (line 208) | type StringsSlice method Value (line 210) | func (l StringsSlice) Value() (driver.Value, error) { method Scan (line 215) | func (l *StringsSlice) Scan(input interface{}) error { type ExampleStruct (line 226) | type ExampleStruct struct method GormDataType (line 231) | func (ExampleStruct) GormDataType() string { method Value (line 235) | func (s ExampleStruct) Value() (driver.Value, error) { method Scan (line 244) | func (s *ExampleStruct) Scan(src interface{}) error { type StructsSlice (line 255) | type StructsSlice method Value (line 257) | func (l StructsSlice) Value() (driver.Value, error) { method Scan (line 262) | func (l *StructsSlice) Scan(input interface{}) error { type Role (line 273) | type Role struct method Scan (line 277) | func (role *Role) Scan(value interface{}) error { method Value (line 286) | func (role Role) Value() (driver.Value, error) { method IsAdmin (line 290) | func (role Role) IsAdmin() bool { type EmptyTime (line 294) | type EmptyTime struct method Scan (line 298) | func (t *EmptyTime) Scan(v interface{}) error { method Value (line 305) | func (t EmptyTime) Value() (driver.Value, error) { type NullString (line 309) | type NullString struct type Point (line 313) | type Point struct method GormDataType (line 317) | func (point Point) GormDataType() string { method GormValue (line 321) | func (point Point) GormValue(ctx context.Context, db *gorm.DB) clause.... function TestGORMValuer (line 328) | func TestGORMValuer(t *testing.T) { FILE: tests/scopes_test.go function NameIn1And2 (line 11) | func NameIn1And2(d *gorm.DB) *gorm.DB { function NameIn2And3 (line 15) | func NameIn2And3(d *gorm.DB) *gorm.DB { function NameIn (line 19) | func NameIn(names []string) func(d *gorm.DB) *gorm.DB { function TestScopes (line 25) | func TestScopes(t *testing.T) { function TestComplexScopes (line 76) | func TestComplexScopes(t *testing.T) { FILE: tests/serializer_test.go type SerializerStruct (line 17) | type SerializerStruct struct type SerializerPostgresStruct (line 31) | type SerializerPostgresStruct struct method TableName (line 45) | func (*SerializerPostgresStruct) TableName() string { return "serializ... function adaptorSerializerModel (line 47) | func adaptorSerializerModel(s *SerializerStruct) interface{} { type Roles (line 55) | type Roles type Job (line 57) | type Job struct type EncryptedString (line 64) | type EncryptedString method Scan (line 66) | func (es *EncryptedString) Scan(ctx context.Context, field *schema.Fie... method Value (line 78) | func (es EncryptedString) Value(ctx context.Context, field *schema.Fie... type CustomSerializer (line 82) | type CustomSerializer struct method Scan (line 90) | func (c *CustomSerializer) Scan(ctx context.Context, field *schema.Fie... method Value (line 102) | func (c *CustomSerializer) Value(ctx context.Context, field *schema.Fi... function NewCustomSerializer (line 86) | func NewCustomSerializer(prefix string) *CustomSerializer { function TestSerializer (line 106) | func TestSerializer(t *testing.T) { function TestSerializerZeroValue (line 152) | func TestSerializerZeroValue(t *testing.T) { function TestSerializerAssignFirstOrCreate (line 181) | func TestSerializerAssignFirstOrCreate(t *testing.T) { function TestSerializerWithAnyType (line 232) | func TestSerializerWithAnyType(t *testing.T) { FILE: tests/soft_delete_test.go function TestSoftDelete (line 15) | func TestSoftDelete(t *testing.T) { function TestDeletedAtUnMarshal (line 82) | func TestDeletedAtUnMarshal(t *testing.T) { function TestDeletedAtOneOr (line 93) | func TestDeletedAtOneOr(t *testing.T) { function TestSoftDeleteZeroValue (line 103) | func TestSoftDeleteZeroValue(t *testing.T) { FILE: tests/sql_builder_test.go function TestRow (line 14) | func TestRow(t *testing.T) { function TestRows (line 48) | func TestRows(t *testing.T) { function TestRaw (line 72) | func TestRaw(t *testing.T) { function TestRowsWithGroup (line 113) | func TestRowsWithGroup(t *testing.T) { function TestQueryRaw (line 142) | func TestQueryRaw(t *testing.T) { function TestDryRun (line 155) | func TestDryRun(t *testing.T) { type ageInt (line 171) | type ageInt method String (line 173) | func (ageInt) String() string { type ageBool (line 177) | type ageBool method String (line 179) | func (ageBool) String() string { type ageUint64 (line 183) | type ageUint64 method String (line 185) | func (ageUint64) String() string { type ageFloat (line 189) | type ageFloat method String (line 191) | func (ageFloat) String() string { function TestExplainSQL (line 195) | func TestExplainSQL(t *testing.T) { function TestGroupConditions (line 224) | func TestGroupConditions(t *testing.T) { function TestCombineStringConditions (line 263) | func TestCombineStringConditions(t *testing.T) { function TestFromWithJoins (line 316) | func TestFromWithJoins(t *testing.T) { function TestToSQL (line 360) | func TestToSQL(t *testing.T) { function assertEqualSQL (line 459) | func assertEqualSQL(t *testing.T, expected string, actually string) { function replaceQuoteInSQL (line 484) | func replaceQuoteInSQL(sql string) string { FILE: tests/submodel_test.go type Man (line 9) | type Man struct method BeforeUpdate (line 17) | func (m *Man) BeforeUpdate(tx *gorm.DB) (err error) { function TestSubModel (line 24) | func TestSubModel(t *testing.T) { FILE: tests/table_test.go type UserWithTable (line 16) | type UserWithTable struct method TableName (line 21) | func (UserWithTable) TableName() string { function TestTable (line 25) | func TestTable(t *testing.T) { function TestTableWithAllFields (line 97) | func TestTableWithAllFields(t *testing.T) { type UserWithTableNamer (line 154) | type UserWithTableNamer struct method TableName (line 159) | func (UserWithTableNamer) TableName(namer schema.Namer) string { function TestTableWithNamer (line 163) | func TestTableWithNamer(t *testing.T) { function TestPostgresTableWithIdentifierLength (line 179) | func TestPostgresTableWithIdentifierLength(t *testing.T) { function TestGaussDBTableWithIdentifierLength (line 255) | func TestGaussDBTableWithIdentifierLength(t *testing.T) { type mockUniqueNamingStrategy (line 331) | type mockUniqueNamingStrategy struct method UniqueName (line 336) | func (a mockUniqueNamingStrategy) UniqueName(table, column string) str... FILE: tests/tests_test.go function init (line 30) | func init() { function OpenTestConnection (line 52) | func OpenTestConnection(cfg *gorm.Config) (db *gorm.DB, err error) { function RunMigrations (line 120) | func RunMigrations() { FILE: tests/tracer_test.go type Tracer (line 10) | type Tracer struct method LogMode (line 15) | func (S Tracer) LogMode(level logger.LogLevel) logger.Interface { method Info (line 19) | func (S Tracer) Info(ctx context.Context, s string, i ...interface{}) { method Warn (line 23) | func (S Tracer) Warn(ctx context.Context, s string, i ...interface{}) { method Error (line 27) | func (S Tracer) Error(ctx context.Context, s string, i ...interface{}) { method Trace (line 31) | func (S Tracer) Trace(ctx context.Context, begin time.Time, fc func() ... FILE: tests/transaction_test.go function TestTransaction (line 13) | func TestTransaction(t *testing.T) { function TestCancelTransaction (line 76) | func TestCancelTransaction(t *testing.T) { function TestTransactionWithBlock (line 95) | func TestTransactionWithBlock(t *testing.T) { function TestTransactionRaiseErrorOnRollbackAfterCommit (line 165) | func TestTransactionRaiseErrorOnRollbackAfterCommit(t *testing.T) { function TestTransactionWithSavePoint (line 181) | func TestTransactionWithSavePoint(t *testing.T) { function TestNestedTransactionWithBlock (line 238) | func TestNestedTransactionWithBlock(t *testing.T) { function TestDeeplyNestedTransactionWithBlockAndWrappedCallback (line 301) | func TestDeeplyNestedTransactionWithBlockAndWrappedCallback(t *testing.T) { function TestDisabledNestedTransaction (line 369) | func TestDisabledNestedTransaction(t *testing.T) { function TestTransactionOnClosedConn (line 432) | func TestTransactionOnClosedConn(t *testing.T) { function TestTransactionWithHooks (line 453) | func TestTransactionWithHooks(t *testing.T) { function TestTransactionWithDefaultTimeout (line 481) | func TestTransactionWithDefaultTimeout(t *testing.T) { FILE: tests/update_belongs_to_test.go function TestUpdateBelongsTo (line 10) | func TestUpdateBelongsTo(t *testing.T) { FILE: tests/update_has_many_test.go function TestUpdateHasManyAssociations (line 10) | func TestUpdateHasManyAssociations(t *testing.T) { FILE: tests/update_has_one_test.go function TestUpdateHasOne (line 12) | func TestUpdateHasOne(t *testing.T) { FILE: tests/update_many2many_test.go function TestUpdateMany2ManyAssociations (line 10) | func TestUpdateMany2ManyAssociations(t *testing.T) { FILE: tests/update_test.go function TestUpdate (line 17) | func TestUpdate(t *testing.T) { function TestUpdates (line 135) | func TestUpdates(t *testing.T) { function TestUpdateColumn (line 188) | func TestUpdateColumn(t *testing.T) { function TestBlockGlobalUpdate (line 244) | func TestBlockGlobalUpdate(t *testing.T) { function TestSelectWithUpdate (line 254) | func TestSelectWithUpdate(t *testing.T) { function TestSelectWithUpdateWithMap (line 318) | func TestSelectWithUpdateWithMap(t *testing.T) { function TestWithUpdateWithInvalidMap (line 366) | func TestWithUpdateWithInvalidMap(t *testing.T) { function TestOmitWithUpdate (line 375) | func TestOmitWithUpdate(t *testing.T) { function TestOmitWithUpdateWithMap (line 425) | func TestOmitWithUpdateWithMap(t *testing.T) { function TestSelectWithUpdateColumn (line 477) | func TestSelectWithUpdateColumn(t *testing.T) { function TestOmitWithUpdateColumn (line 502) | func TestOmitWithUpdateColumn(t *testing.T) { function TestUpdateColumnsSkipsAssociations (line 520) | func TestUpdateColumnsSkipsAssociations(t *testing.T) { function TestUpdatesWithBlankValues (line 547) | func TestUpdatesWithBlankValues(t *testing.T) { function TestUpdatesTableWithIgnoredValues (line 563) | func TestUpdatesTableWithIgnoredValues(t *testing.T) { function TestUpdateFromSubQuery (line 589) | func TestUpdateFromSubQuery(t *testing.T) { function TestIdempotentSave (line 617) | func TestIdempotentSave(t *testing.T) { function TestSave (line 636) | func TestSave(t *testing.T) { function TestSaveWithPrimaryValue (line 726) | func TestSaveWithPrimaryValue(t *testing.T) { function TestUpdateReturning (line 769) | func TestUpdateReturning(t *testing.T) { function TestUpdateWithDiffSchema (line 800) | func TestUpdateWithDiffSchema(t *testing.T) { type TokenOwner (line 813) | type TokenOwner struct method BeforeSave (line 819) | func (t *TokenOwner) BeforeSave(tx *gorm.DB) error { type Token (line 824) | type Token struct method BeforeSave (line 829) | func (t *Token) BeforeSave(tx *gorm.DB) error { function TestSaveWithHooks (line 834) | func TestSaveWithHooks(t *testing.T) { function TestUpdateFrom (line 887) | func TestUpdateFrom(t *testing.T) { FILE: tests/upsert_test.go function TestUpsert (line 13) | func TestUpsert(t *testing.T) { function TestUpsertSlice (line 91) | func TestUpsertSlice(t *testing.T) { function TestUpsertSliceWithReturning (line 138) | func TestUpsertSliceWithReturning(t *testing.T) { function TestUpsertWithSave (line 185) | func TestUpsertWithSave(t *testing.T) { function TestFindOrInitialize (line 247) | func TestFindOrInitialize(t *testing.T) { function TestFindOrCreate (line 294) | func TestFindOrCreate(t *testing.T) { function TestUpdateWithMissWhere (line 360) | func TestUpdateWithMissWhere(t *testing.T) { FILE: utils/tests/dummy_dialecter.go type DummyDialector (line 11) | type DummyDialector struct method Name (line 15) | func (DummyDialector) Name() string { method Initialize (line 19) | func (DummyDialector) Initialize(db *gorm.DB) error { method DefaultValueOf (line 30) | func (DummyDialector) DefaultValueOf(field *schema.Field) clause.Expre... method Migrator (line 34) | func (DummyDialector) Migrator(*gorm.DB) gorm.Migrator { method BindVarTo (line 38) | func (DummyDialector) BindVarTo(writer clause.Writer, stmt *gorm.State... method QuoteTo (line 42) | func (DummyDialector) QuoteTo(writer clause.Writer, str string) { method Explain (line 90) | func (DummyDialector) Explain(sql string, vars ...interface{}) string { method DataTypeOf (line 94) | func (DummyDialector) DataTypeOf(*schema.Field) string { method Translate (line 98) | func (d DummyDialector) Translate(err error) error { FILE: utils/tests/models.go type User (line 15) | type User struct type Account (line 35) | type Account struct type Pet (line 41) | type Pet struct type Toy (line 48) | type Toy struct type Tools (line 55) | type Tools struct type Company (line 62) | type Company struct type Language (line 67) | type Language struct type Coupon (line 72) | type Coupon struct type CouponProduct (line 79) | type CouponProduct struct type Order (line 85) | type Order struct type Parent (line 92) | type Parent struct type Child (line 99) | type Child struct FILE: utils/tests/utils.go function AssertObjEqual (line 14) | func AssertObjEqual(t *testing.T, r, e interface{}, names ...string) { function AssertEqual (line 30) | func AssertEqual(t *testing.T, got, expect interface{}) { function Now (line 125) | func Now() *time.Time { FILE: utils/utils.go function init (line 16) | func init() { function sourceDir (line 22) | func sourceDir(file string) string { function CallerFrame (line 38) | func CallerFrame() runtime.Frame { function FileWithLineNum (line 56) | func FileWithLineNum() string { function IsInvalidDBNameChar (line 65) | func IsInvalidDBNameChar(c rune) bool { function CheckTruth (line 70) | func CheckTruth(vals ...string) bool { function ToStringKey (line 79) | func ToStringKey(values ...interface{}) string { function Contains (line 106) | func Contains(elems []string, elem string) bool { function AssertEqual (line 115) | func AssertEqual(x, y interface{}) bool { function ToString (line 139) | func ToString(value interface{}) string { constant nestedRelationSplit (line 167) | nestedRelationSplit = "__" function NestedRelationName (line 170) | func NestedRelationName(prefix, name string) string { function SplitNestedRelationName (line 175) | func SplitNestedRelationName(name string) []string { function JoinNestedRelationNames (line 180) | func JoinNestedRelationNames(relationNames []string) string { function RTrimSlice (line 185) | func RTrimSlice[T any](v []T, trimLen int) []T { FILE: utils/utils_test.go function TestIsInvalidDBNameChar (line 13) | func TestIsInvalidDBNameChar(t *testing.T) { function TestCheckTruth (line 21) | func TestCheckTruth(t *testing.T) { function TestToStringKey (line 44) | func TestToStringKey(t *testing.T) { function TestContains (line 63) | func TestContains(t *testing.T) { type ModifyAt (line 82) | type ModifyAt method Value (line 85) | func (n ModifyAt) Value() (driver.Value, error) { function TestAssertEqual (line 92) | func TestAssertEqual(t *testing.T) { function TestToString (line 114) | func TestToString(t *testing.T) { function TestRTrimSlice (line 142) | func TestRTrimSlice(t *testing.T) { FILE: utils/utils_unix_test.go function TestSourceDir (line 10) | func TestSourceDir(t *testing.T) { FILE: utils/utils_windows_test.go function TestSourceDir (line 7) | func TestSourceDir(t *testing.T) {