Documentation
¶
Index ¶
- Constants
- func ConvertToSnakeCase(input string) string
- func ToCamelCase(s string) string
- type BoolDBField
- type ByteDBField
- type CustomDBField
- type CustomDBFieldI
- type EnumDBField
- type EnumValue
- type Field
- func (f *Field) CanBeGreater() bool
- func (f *Field) CanTime() bool
- func (f *Field) CanUUID() bool
- func (f *Field) CanUseIf() bool
- func (f *Field) GetAddressType() string
- func (f *Field) GetBaseType() string
- func (f *Field) GetCustomType() string
- func (f *Field) GetDBName() string
- func (f *Field) GetDefault() string
- func (f *Field) GetFieldType() int
- func (f *Field) GetName() string
- func (f *Field) GetNameLower() string
- func (f *Field) GetNameTitle() string
- func (f *Field) GetRequiredPackages() []string
- func (f *Field) GetType() string
- func (f *Field) IsCanIn() bool
- func (f *Field) IsCustomType() bool
- func (f *Field) IsDefault() bool
- func (f *Field) IsNillable() bool
- func (f *Field) IsSerial() bool
- func (f *Field) NeedPrepare() bool
- func (f *Field) SetDBName(v string)
- func (f *Field) SetDBNameManually(name string)
- func (f *Field) SetNillable() *Field
- type FieldI
- type Float32DBField
- type Float64DBField
- type FuncStruct
- type Generation
- type Index
- type IntDBField
- type JSONDBField
- type Relation
- type StringDBField
- type Table
- type TimeDBField
- type UUIDDBField
- type UintDBField
Constants ¶
View Source
const ( FieldTypeBool = iota + 1 FieldTypeEnum FieldTypeInt FieldTypeSmallInt FieldTypeBigInt FieldTypeFloat32 FieldTypeFloat64 FieldTypeString FieldTypeTime FieldTypeUUID FieldTypeUint FieldTypeByte FieldTypeJSON FieldTypeCustom )
View Source
const ( RelationTypeManyToOne = iota RelationTypeOneToMany RelationTypeManyToMany )
Variables ¶
This section is empty.
Functions ¶
func ConvertToSnakeCase ¶
func ToCamelCase ¶ added in v0.8.2
Types ¶
type BoolDBField ¶
type BoolDBField struct {
*Field
DefaultValue bool
DefaultFuncStruct *FuncStruct
}
func BoolField ¶
func BoolField(name string) *BoolDBField
func (*BoolDBField) Default ¶
func (i *BoolDBField) Default(v bool) *BoolDBField
func (*BoolDBField) DefaultFunc ¶
func (i *BoolDBField) DefaultFunc(v func() bool) *BoolDBField
func (*BoolDBField) GetDefault ¶
func (i *BoolDBField) GetDefault() string
func (*BoolDBField) SetDBName ¶
func (i *BoolDBField) SetDBName(v string) *BoolDBField
type ByteDBField ¶ added in v0.4.0
type ByteDBField struct {
*Field
DefaultValue []byte
DefaultFuncStruct *FuncStruct
}
func ByteField ¶ added in v0.4.0
func ByteField(name string) *ByteDBField
func (*ByteDBField) Default ¶ added in v0.4.0
func (i *ByteDBField) Default(v []byte) *ByteDBField
func (*ByteDBField) DefaultFunc ¶ added in v0.4.0
func (i *ByteDBField) DefaultFunc(v func() bool) *ByteDBField
func (*ByteDBField) GetDefault ¶ added in v0.4.0
func (i *ByteDBField) GetDefault() string
func (*ByteDBField) SetDBName ¶ added in v0.4.0
func (i *ByteDBField) SetDBName(v string) *ByteDBField
type CustomDBField ¶ added in v0.6.0
type CustomDBField struct {
*Field
}
func CustomField ¶ added in v0.6.0
func CustomField(name, postgresType string, v CustomDBFieldI) *CustomDBField
func (*CustomDBField) SetDBName ¶ added in v0.6.0
func (i *CustomDBField) SetDBName(v string) *CustomDBField
type CustomDBFieldI ¶ added in v0.6.0
type EnumDBField ¶
type EnumDBField struct {
*Field
DefaultValue string
DefaultFuncStruct *FuncStruct
TypeName string
Values []*EnumValue
}
func EnumField ¶
func EnumField(name string, values []string) *EnumDBField
func (*EnumDBField) Default ¶
func (s *EnumDBField) Default(v string) *EnumDBField
func (*EnumDBField) DefaultFunc ¶
func (s *EnumDBField) DefaultFunc(v func() string) *EnumDBField
func (*EnumDBField) GetDefault ¶
func (s *EnumDBField) GetDefault() string
func (*EnumDBField) SetDBName ¶
func (s *EnumDBField) SetDBName(v string) *EnumDBField
type EnumValue ¶ added in v0.8.2
type EnumValue struct {
// contains filtered or unexported fields
}
type Field ¶
type Field struct {
FieldType int
Name string
DBName string
Type string
BaseType string
Nillable bool
HaveDefault bool
IsPrepare bool
IsGreater bool
HaveCustomType bool
IsTime bool
IsUUID bool
IsBool bool
CanIn bool
Serial bool
CustomDBType string
RequiredPackages []string
}
func (*Field) CanBeGreater ¶
func (*Field) GetAddressType ¶
func (*Field) GetBaseType ¶
func (*Field) GetCustomType ¶ added in v0.6.0
func (*Field) GetDefault ¶ added in v0.8.2
func (*Field) GetFieldType ¶
func (*Field) GetNameLower ¶
func (*Field) GetNameTitle ¶
func (*Field) GetRequiredPackages ¶
func (*Field) IsCustomType ¶
func (*Field) IsNillable ¶
func (*Field) NeedPrepare ¶
func (*Field) SetDBNameManually ¶
func (*Field) SetNillable ¶
type Float32DBField ¶
type Float32DBField struct {
*Field
DefaultValue float32
DefaultFuncStruct *FuncStruct
}
func Float32Field ¶
func Float32Field(name string) *Float32DBField
func (*Float32DBField) Default ¶
func (i *Float32DBField) Default(v float32) *Float32DBField
func (*Float32DBField) DefaultFunc ¶
func (i *Float32DBField) DefaultFunc(v func() float32) *Float32DBField
func (*Float32DBField) GetDefault ¶
func (i *Float32DBField) GetDefault() string
func (*Float32DBField) SetDBName ¶
func (i *Float32DBField) SetDBName(v string) *Float32DBField
type Float64DBField ¶
type Float64DBField struct {
*Field
DefaultValue float64
DefaultFuncStruct *FuncStruct
}
func Float64Field ¶
func Float64Field(name string) *Float64DBField
func (*Float64DBField) Default ¶
func (i *Float64DBField) Default(v float64) *Float64DBField
func (*Float64DBField) DefaultFunc ¶
func (i *Float64DBField) DefaultFunc(v func() float64) *Float64DBField
func (*Float64DBField) GetDefault ¶
func (i *Float64DBField) GetDefault() string
func (*Float64DBField) SetDBName ¶
func (i *Float64DBField) SetDBName(v string) *Float64DBField
type FuncStruct ¶
func (*FuncStruct) DefaultFunc ¶
func (f *FuncStruct) DefaultFunc(v any)
type Generation ¶
type Generation struct {
Tables []*Table
}
type IntDBField ¶
type IntDBField struct {
*Field
DefaultValue int
DefaultFuncStruct *FuncStruct
}
func IntField ¶
func IntField(name string) *IntDBField
func (*IntDBField) AddSerial ¶
func (i *IntDBField) AddSerial() *IntDBField
func (*IntDBField) Default ¶
func (i *IntDBField) Default(v int) *IntDBField
func (*IntDBField) DefaultFunc ¶
func (i *IntDBField) DefaultFunc(v func() int) *IntDBField
func (*IntDBField) GetDefault ¶
func (i *IntDBField) GetDefault() string
func (*IntDBField) SetDBName ¶
func (i *IntDBField) SetDBName(v string) *IntDBField
type JSONDBField ¶ added in v0.4.0
type JSONDBField struct {
*Field
DefaultFuncStruct *FuncStruct
}
func JSONField ¶ added in v0.4.0
func JSONField(name string) *JSONDBField
func (*JSONDBField) DefaultFunc ¶ added in v0.4.0
func (u *JSONDBField) DefaultFunc(v func() map[string]any) *JSONDBField
func (*JSONDBField) GetDefault ¶ added in v0.4.0
func (u *JSONDBField) GetDefault() string
func (*JSONDBField) PrepareFunc ¶ added in v0.4.0
func (u *JSONDBField) PrepareFunc() string
func (*JSONDBField) SetDBName ¶ added in v0.4.0
func (u *JSONDBField) SetDBName(v string) *JSONDBField
func (*JSONDBField) SetNillable ¶ added in v0.4.0
func (u *JSONDBField) SetNillable() *JSONDBField
type Relation ¶
type Relation struct {
RelationTable string
RelationTableDBName string
RelationField string
OnField string
ManyTableDBName string
RelationTableField string
RelationType int
}
func ManyToMany ¶
func (*Relation) GetRelationField ¶
func (*Relation) GetRelationTableLower ¶
func (*Relation) IsManyToMany ¶
func (*Relation) IsRelationList ¶
type StringDBField ¶
type StringDBField struct {
*Field
DefaultValue string
DefaultFuncStruct *FuncStruct
}
func StringField ¶
func StringField(name string) *StringDBField
func (*StringDBField) Default ¶
func (s *StringDBField) Default(v string) *StringDBField
func (*StringDBField) DefaultFunc ¶
func (s *StringDBField) DefaultFunc(v func() string) *StringDBField
func (*StringDBField) GetDefault ¶
func (s *StringDBField) GetDefault() string
func (*StringDBField) SetDBName ¶
func (s *StringDBField) SetDBName(v string) *StringDBField
type Table ¶
type Table struct {
PackageName string
TableName string
DBName string
IDField string
IDDBField string
IDFieldType string
Fields []FieldI
Relations []*Relation
IDColumn FieldI
RequiredPackages []string
InternalRequiredPackages []string
Indexes []Index
}
func (*Table) IDFieldLower ¶
func (*Table) SetIDField ¶
func (*Table) SetTableName ¶
type TimeDBField ¶
type TimeDBField struct {
*Field
DefaultFuncStruct *FuncStruct
}
func TimeField ¶
func TimeField(name string) *TimeDBField
func (*TimeDBField) DefaultFunc ¶
func (t *TimeDBField) DefaultFunc(v func() time.Time) *TimeDBField
func (*TimeDBField) GetDefault ¶
func (t *TimeDBField) GetDefault() string
func (*TimeDBField) PrepareFunc ¶
func (t *TimeDBField) PrepareFunc() string
func (*TimeDBField) SetDBName ¶
func (t *TimeDBField) SetDBName(v string) *TimeDBField
func (*TimeDBField) SetNillable ¶
func (t *TimeDBField) SetNillable() *TimeDBField
type UUIDDBField ¶
type UUIDDBField struct {
*Field
DefaultFuncStruct *FuncStruct
}
func UUIDField ¶
func UUIDField(name string) *UUIDDBField
func (*UUIDDBField) DefaultFunc ¶
func (u *UUIDDBField) DefaultFunc(v func() uuid.UUID) *UUIDDBField
func (*UUIDDBField) GetDefault ¶
func (u *UUIDDBField) GetDefault() string
func (*UUIDDBField) PrepareFunc ¶
func (u *UUIDDBField) PrepareFunc() string
func (*UUIDDBField) SetDBName ¶
func (u *UUIDDBField) SetDBName(v string) *UUIDDBField
func (*UUIDDBField) SetNillable ¶
func (u *UUIDDBField) SetNillable() *UUIDDBField
type UintDBField ¶
type UintDBField struct {
*Field
DefaultValue uint
DefaultFuncStruct *FuncStruct
}
func UintField ¶
func UintField(name string) *UintDBField
func (*UintDBField) AddSerial ¶
func (i *UintDBField) AddSerial() *UintDBField
func (*UintDBField) Default ¶
func (i *UintDBField) Default(v uint) *UintDBField
func (*UintDBField) DefaultFunc ¶
func (i *UintDBField) DefaultFunc(v func() uint) *UintDBField
func (*UintDBField) GetDefault ¶
func (i *UintDBField) GetDefault() string
func (*UintDBField) SetDBName ¶
func (i *UintDBField) SetDBName(v string) *UintDBField
Click to show internal directories.
Click to hide internal directories.