Documentation
¶
Index ¶
- Variables
- func ExtractField[T any, F any](slice []T, fieldPath string) ([]F, error)
- func NewOptimisticLock(opts ...Option) gorm.Plugin
- type Option
- type Version
- func (v *Version) CreateClauses(field *schema.Field) []clause.Interface
- func (v Version) Equal(val interface{}) bool
- func (v Version) MarshalJSON() ([]byte, error)
- func (v *Version) UnmarshalJSON(bytes []byte) error
- func (v *Version) UpdateClauses(field *schema.Field) []clause.Interface
- func (v Version) Value() uint64
- type VersionCreateClause
- type VersionUpdateClause
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrOptimisticLock = errors.New("db record version mismatch")
Functions ¶
func ExtractField ¶
ExtractField extracts the values of a specified field (including nested fields via "dot" notation) from a slice of structs or pointers to structs. It returns a slice of the specified field type.
func NewOptimisticLock ¶
Types ¶
type Option ¶
type Option interface {
// contains filtered or unexported methods
}
func VersionFieldName ¶
VersionFieldName sets the version field name in the options configuration using the provided string value.
Default value: `Version`
type Version ¶
type Version uint64
func (*Version) CreateClauses ¶
func (Version) MarshalJSON ¶
func (*Version) UnmarshalJSON ¶
func (*Version) UpdateClauses ¶
type VersionCreateClause ¶
func (VersionCreateClause) Build ¶
func (v VersionCreateClause) Build(clause.Builder)
func (VersionCreateClause) MergeClause ¶
func (v VersionCreateClause) MergeClause(*clause.Clause)
func (VersionCreateClause) ModifyStatement ¶
func (v VersionCreateClause) ModifyStatement(stmt *gorm.Statement)
func (VersionCreateClause) Name ¶
func (v VersionCreateClause) Name() string
type VersionUpdateClause ¶
func (VersionUpdateClause) Build ¶
func (v VersionUpdateClause) Build(clause.Builder)
func (VersionUpdateClause) MergeClause ¶
func (v VersionUpdateClause) MergeClause(*clause.Clause)
func (VersionUpdateClause) ModifyStatement ¶
func (v VersionUpdateClause) ModifyStatement(stmt *gorm.Statement)
func (VersionUpdateClause) Name ¶
func (v VersionUpdateClause) Name() string
Click to show internal directories.
Click to hide internal directories.