Documentation
¶
Index ¶
- func Express(w Writer, d Dialect, start int, e Expression) ([]any, error)
- func ExpressIf(w Writer, d Dialect, start int, e Expression, cond bool, ...) ([]any, error)
- func ExpressSlice(w Writer, d Dialect, start int, expressions []Expression, ...) ([]any, error)
- type Argument
- type ArgumentBase
- type DBNamedArgument
- type Dialect
- type DialectWithNamed
- type ExpressBuilder
- func (h *ExpressBuilder) Err() error
- func (h *ExpressBuilder) Express(e Expression)
- func (h *ExpressBuilder) ExpressIf(e Expression, cond bool, prefix, suffix Expression)
- func (h *ExpressBuilder) ExpressSlice(expressions []Expression, prefix, sep, suffix Expression)
- func (h *ExpressBuilder) Result() ([]any, error)
- func (h *ExpressBuilder) WriteQuery(e Query)
- type Expression
- type ExpressionFunc
- type NamedArgument
- type Query
- type QueryBuilder
- type QueryClause
- type QueryClauseMerge
- type QueryClauseMultiple
- type ValuedArgument
- type Writer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExpressIf ¶
func ExpressIf(w Writer, d Dialect, start int, e Expression, cond bool, prefix, suffix Expression) ([]any, error)
ExpressIf expands an express if the condition evaluates to true it can also add a prefix and suffix
func ExpressSlice ¶
func ExpressSlice(w Writer, d Dialect, start int, expressions []Expression, prefix, sep, suffix Expression) ([]any, error)
ExpressSlice is used to express a slice of expressions along with a prefix and suffix
Types ¶
type Argument ¶
type Argument interface {
// contains filtered or unexported methods
}
Argument is the base interface for query arguments.
type ArgumentBase ¶
type ArgumentBase struct{}
type DBNamedArgument ¶
DBNamedArgument is like NamedArgument but its value will be wrapped using [sql.Named].
type DialectWithNamed ¶
type ExpressBuilder ¶
type ExpressBuilder struct {
// contains filtered or unexported fields
}
ExpressBuilder builds arguments in a sequence of Express calls.
func NewExpressBuilder ¶
func NewExpressBuilder(w Writer, d Dialect, start int) *ExpressBuilder
func (*ExpressBuilder) Err ¶
func (h *ExpressBuilder) Err() error
func (*ExpressBuilder) Express ¶
func (h *ExpressBuilder) Express(e Expression)
func (*ExpressBuilder) ExpressIf ¶
func (h *ExpressBuilder) ExpressIf(e Expression, cond bool, prefix, suffix Expression)
func (*ExpressBuilder) ExpressSlice ¶
func (h *ExpressBuilder) ExpressSlice(expressions []Expression, prefix, sep, suffix Expression)
func (*ExpressBuilder) Result ¶
func (h *ExpressBuilder) Result() ([]any, error)
func (*ExpressBuilder) WriteQuery ¶
func (h *ExpressBuilder) WriteQuery(e Query)
type Expression ¶
type ExpressionFunc ¶
type NamedArgument ¶
NamedArgument represents an argument were its value will be provided by name.
type Query ¶
type Query interface { Expression WriteQuery(w Writer, start int) (args []any, err error) }
type QueryBuilder ¶
type QueryBuilder interface { Dialect() Dialect Add(q QueryClause) }
type QueryClause ¶
type QueryClause interface { Expression ClauseID() string ClauseOrder() int }
type QueryClauseMerge ¶
type QueryClauseMerge interface { QueryClause ClauseMerge(other QueryClause) }
type QueryClauseMultiple ¶
type QueryClauseMultiple interface { QueryClause ClauseMultiple() }
type ValuedArgument ¶
ValuedArgument represents an argument were its value will be provided by this instance.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.