github.com/Ali-iotechsys/sqlboiler/v4@v4.0.0-20221208124957-6aec9a5f1f71/templates/main/01_types.go.tpl (about) 1 {{if .Table.IsJoinTable -}} 2 {{else -}} 3 {{- $alias := .Aliases.Table .Table.Name -}} 4 var ( 5 {{$alias.DownSingular}}AllColumns = []string{{"{"}}{{.Table.Columns | columnNames | stringMap .StringFuncs.quoteWrap | join ", "}}{{"}"}} 6 {{$alias.DownSingular}}ColumnsWithoutDefault = []string{{"{"}}{{.Table.Columns | filterColumnsByDefault false | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}} 7 {{$alias.DownSingular}}ColumnsWithDefault = []string{{"{"}}{{.Table.Columns | filterColumnsByDefault true | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}} 8 {{if .Table.IsView -}} 9 {{$alias.DownSingular}}PrimaryKeyColumns = []string{} 10 {{else -}} 11 {{$alias.DownSingular}}PrimaryKeyColumns = []string{{"{"}}{{.Table.PKey.Columns | stringMap .StringFuncs.quoteWrap | join ", "}}{{"}"}} 12 {{end -}} 13 {{$alias.DownSingular}}GeneratedColumns = []string{{"{"}}{{.Table.Columns | filterColumnsByAuto true | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}} 14 ) 15 16 type ( 17 // {{$alias.UpSingular}}Slice is an alias for a slice of pointers to {{$alias.UpSingular}}. 18 // This should almost always be used instead of []{{$alias.UpSingular}}. 19 {{$alias.UpSingular}}Slice []*{{$alias.UpSingular}} 20 {{if not .NoHooks -}} 21 // {{$alias.UpSingular}}Hook is the signature for custom {{$alias.UpSingular}} hook methods 22 {{$alias.UpSingular}}Hook func({{if .NoContext}}boil.Executor{{else}}context.Context, boil.ContextExecutor{{end}}, *{{$alias.UpSingular}}) error 23 {{- end}} 24 25 {{$alias.DownSingular}}Query struct { 26 *queries.Query 27 } 28 ) 29 30 // Cache for insert, update and upsert 31 var ( 32 {{$alias.DownSingular}}Type = reflect.TypeOf(&{{$alias.UpSingular}}{}) 33 {{$alias.DownSingular}}Mapping = queries.MakeStructMapping({{$alias.DownSingular}}Type) 34 {{if not .Table.IsView -}} 35 {{$alias.DownSingular}}PrimaryKeyMapping, _ = queries.BindMapping({{$alias.DownSingular}}Type, {{$alias.DownSingular}}Mapping, {{$alias.DownSingular}}PrimaryKeyColumns) 36 {{end -}} 37 {{$alias.DownSingular}}InsertCacheMut sync.RWMutex 38 {{$alias.DownSingular}}InsertCache = make(map[string]insertCache) 39 {{$alias.DownSingular}}UpdateCacheMut sync.RWMutex 40 {{$alias.DownSingular}}UpdateCache = make(map[string]updateCache) 41 {{$alias.DownSingular}}UpsertCacheMut sync.RWMutex 42 {{$alias.DownSingular}}UpsertCache = make(map[string]insertCache) 43 ) 44 45 var ( 46 // Force time package dependency for automated UpdatedAt/CreatedAt. 47 _ = time.Second 48 // Force qmhelper dependency for where clause generation (which doesn't 49 // always happen) 50 _ = qmhelper.Where 51 {{if .Table.IsView -}} 52 // These are used in some views 53 _ = fmt.Sprintln("") 54 _ = reflect.Int 55 _ = strings.Builder{} 56 _ = sync.Mutex{} 57 _ = strmangle.Plural("") 58 _ = strconv.IntSize 59 {{- end}} 60 ) 61 {{end -}}