Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DeleteBuilder ¶
type DeleteBuilder[S any] interface { Where(filters ...Matcher[S]) DeleteBuilder[S] Run() (deleted []S, err error) }
type InsertBuilder ¶
type InsertBuilder[S any] interface { Set(mutators ...Mutator[S]) InsertBuilder[S] Run() (inserted S, err error) }
type Lesser ¶
func OrderByDesc ¶
func OrderByDesc[S any, T constraints.Ordered]( accessor Accessor[S, T], ) Lesser[S]
type Mutator ¶
type Mutator[S any] interface { Mutate(s S) }
func NewMutator ¶
func NewMutator[S any, V comparable]( accessor Accessor[S, V], value V, ) Mutator[S]
type SelectBuilder ¶
type SelectBuilder[S any] interface { Where(filters ...Matcher[S]) SelectBuilder[S] OrderBy(orderBys ...Lesser[S]) SelectBuilder[S] Run() (results []S, err error) }
type SpecFactory ¶
type SpecFactory[S any] interface { New() S }
type Storage ¶
type Storage[S any] interface { Delete(filters Matcher[S]) (deleted []S, err error) Insert(mutators []Mutator[S]) (inserted S, err error) Select( filters Matcher[S], orderBys []Lesser[S], ) (results []S, err error) NewDeleteBuilder() DeleteBuilder[S] NewInsertBuilder() InsertBuilder[S] NewSelectBuilder() SelectBuilder[S] Update( filters Matcher[S], mutators []Mutator[S], orderBys []Lesser[S], ) (updated []S, err error) }
type UpdateBuilder ¶
type UpdateBuilder[S any] interface { OrderBy(orderBys ...Lesser[S]) UpdateBuilder[S] Run() (updated []S, err error) Set(mutators ...Mutator[S]) UpdateBuilder[S] Where(filters ...Matcher[S]) UpdateBuilder[S] }
Click to show internal directories.
Click to hide internal directories.