querybuilder

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 29, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Constructor

type Constructor func() QueryBuilder

func WrapWithDebug

func WrapWithDebug(constructor Constructor) Constructor

type QueryBuilder

type QueryBuilder interface {
	MakeCopy() QueryBuilder
	Limit(limitItems int) QueryBuilder
	Offset(startOffset int) QueryBuilder
	Not() QueryBuilder
	Or() QueryBuilder
	OpenBracket() QueryBuilder
	CloseBracket() QueryBuilder
	AddWhere(cmp where.FieldComparator) QueryBuilder
	Where(getter *record.InterfaceGetter, condition where.ComparatorType, values ...interface{}) QueryBuilder
	WhereInt(getter *record.IntGetter, condition where.ComparatorType, values ...int) QueryBuilder
	WhereInt32(getter *record.Int32Getter, condition where.ComparatorType, values ...int32) QueryBuilder
	WhereInt64(getter *record.Int64Getter, condition where.ComparatorType, values ...int64) QueryBuilder
	WhereString(getter *record.StringGetter, condition where.ComparatorType, values ...string) QueryBuilder
	WhereStringRegexp(getter *record.StringGetter, value *regexp.Regexp) QueryBuilder
	WhereBool(getter *record.BoolGetter, condition where.ComparatorType, values ...bool) QueryBuilder
	WhereEnum8(getter *record.Enum8Getter, condition where.ComparatorType, values ...record.Enum8) QueryBuilder
	WhereEnum16(getter *record.Enum16Getter, condition where.ComparatorType, values ...record.Enum16) QueryBuilder
	WhereMap(getter *record.MapGetter, condition where.ComparatorType, values ...interface{}) QueryBuilder
	WhereSet(getter *record.SetGetter, condition where.ComparatorType, values ...interface{}) QueryBuilder
	Sort(by sort.By) QueryBuilder
	OnIteration(cb func(item record.Record)) QueryBuilder
	Query() query.Query

	// WhereTime add condition for check field with time.Time type
	WhereTime(getter *fields.TimeGetter, condition where.ComparatorType, value ...time.Time) QueryBuilder
}

func Create

func Create() QueryBuilder

func WrapQueryBuilder

func WrapQueryBuilder(qb QueryBuilder) QueryBuilder

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL