Versions in this module Expand all Collapse all v1 v1.1.0 Oct 24, 2023 v1.0.0 Oct 9, 2023 Changes in this version + var ErrInvalidDB = fmt.Errorf("invalid db") + var ErrNoTransaction = fmt.Errorf("no transaction") + func DiffModel(curr, prev interface{}) []string + func RegisterConverter(entity ddd.IEntity, converter IConverter) + func RegisterEntity2Model(entity ddd.IEntity, f1 Entity2Model, f2 Model2Entity) + type Converter struct + type Entity2Model func(entity, parent ddd.IEntity, op ddd.OpType) (IModel, error) + type Executor struct + func NewExecutor(db *gorm.DB) *Executor + func (e *Executor) Begin(ctx context.Context) (context.Context, error) + func (e *Executor) Commit(ctx context.Context) error + func (e *Executor) Diff(ctx context.Context, curr, prev ddd.IModel) ddd.IModel + func (e *Executor) Entity2Model(entity, parent ddd.IEntity, op ddd.OpType) (ddd.IModel, error) + func (e *Executor) Exec(ctx context.Context, action *ddd.Action) error + func (e *Executor) Model2Entity(model ddd.IModel, entity ddd.IEntity) error + func (e *Executor) RollBack(ctx context.Context) error + type IConverter interface + Entity2Model func(entity, parent ddd.IEntity, op ddd.OpType) (IModel, error) + Model2Entity func(po IModel, do ddd.IEntity) error + type IModel interface + GetID func() string + TableName func() string + type Model2Entity func(po IModel, do ddd.IEntity) error