Documentation ¶
Index ¶
- Variables
- func And(expr ...string) litsql.Expression
- func AndExpr(expr ...litsql.Expression) litsql.Expression
- func Arg(value any) litsql.Expression
- func ArgDBNamed(name string) litsql.Expression
- func ArgFunc(f func() (any, error)) litsql.Expression
- func ArgNamed(name string) litsql.Expression
- func Args(values []any) []litsql.Expression
- func ArgsDBNamed(names ...string) []litsql.Expression
- func ArgsFunc(fs []func() (any, error)) []litsql.Expression
- func ArgsNamed(names ...string) []litsql.Expression
- func CastSlice[E litsql.Expression](list []E) []litsql.Expression
- func Clause(query string, args ...any) litsql.Expression
- func Func(f func() (litsql.Expression, error)) litsql.Expression
- func If(condition bool, e litsql.Expression) litsql.Expression
- func IfElse(condition bool, etrue, efalse litsql.Expression) litsql.Expression
- func In(values []any) litsql.Expression
- func InP(values []any) litsql.Expression
- func InPT[T any](values []T) litsql.Expression
- func InT[T any](values []T) litsql.Expression
- func Join(exprs ...litsql.Expression) litsql.Expression
- func JoinSep(sep string, exprs ...litsql.Expression) litsql.Expression
- func MapSlice[T any](source []T, mapFunc func(T) litsql.Expression) []litsql.Expression
- func Or(expr ...string) litsql.Expression
- func OrExpr(expr ...litsql.Expression) litsql.Expression
- func Paren(expr ...string) litsql.Expression
- func ParenExpr(expr ...litsql.Expression) litsql.Expression
- func PrefixIf(condition bool, prefix litsql.Expression, e litsql.Expression) litsql.Expression
- func Quote(aa ...string) litsql.Expression
- func String(str string) litsql.Expression
- func StringList(str []string) []litsql.Expression
- func StringListQuote(str []string) []litsql.Expression
- func StringQuote(str string) litsql.Expression
- func WriterAddSeparator(topLevel bool) litsql.Expression
- type Raw
Constants ¶
This section is empty.
Variables ¶
var ( Space = Raw(internal.Space) CommaSpace = Raw(internal.CommaSpace) NewLine = Raw(internal.NewLine) OpenPar = Raw(internal.OpenPar) ClosePar = Raw(internal.ClosePar) CommaWriterNewLine = Join(Raw(internal.Comma), WriterNewLine) CommaWriterSeparator = Join(Raw(internal.Comma), WriterSeparator) )
var ErrNoNamedArgs = errors.New("Dialect does not support named arguments")
var WriterNewLine = litsql.ExpressionFunc(func(w litsql.Writer, d litsql.Dialect, start int) ([]any, error) { w.WriteNewLine() return nil, nil })
WriterNewLine calls litsql.Writer.WriteNewline.
var WriterSeparator = litsql.ExpressionFunc(func(w litsql.Writer, d litsql.Dialect, start int) ([]any, error) { w.WriteSeparator() return nil, nil })
WriterSeparator calls litsql.Writer.WriteSeparator.
Functions ¶
func And ¶
func And(expr ...string) litsql.Expression
And outputs the list of expressions separated by " AND ".
func AndExpr ¶ added in v0.8.0
func AndExpr(expr ...litsql.Expression) litsql.Expression
AndExpr outputs the list of expressions separated by " AND ".
func Arg ¶
func Arg(value any) litsql.Expression
Arg outputs the dialect-specific argument matcher, and wraps the passed value.
func ArgDBNamed ¶ added in v0.6.1
func ArgDBNamed(name string) litsql.Expression
ArgDBNamed outputs the dialect-specific argument matcher, and wraps the passed value as a named argument.
func ArgFunc ¶ added in v0.6.1
func ArgFunc(f func() (any, error)) litsql.Expression
ArgFunc returns the argument value in a callback.
func ArgNamed ¶ added in v0.5.4
func ArgNamed(name string) litsql.Expression
ArgNamed outputs the dialect-specific argument matcher, and wraps the passed value as a named argument.
func Args ¶
func Args(values []any) []litsql.Expression
Args wraps multiple values in a slice of Arg.
func ArgsDBNamed ¶ added in v0.6.1
func ArgsDBNamed(names ...string) []litsql.Expression
ArgsDBNamed wraps multiple values in a slice of ArgDBNamed.
func ArgsFunc ¶ added in v0.6.1
func ArgsFunc(fs []func() (any, error)) []litsql.Expression
ArgsFunc wraps multiple values in a slice of ArgFunc.
func ArgsNamed ¶ added in v0.5.4
func ArgsNamed(names ...string) []litsql.Expression
ArgsNamed wraps multiple values in a slice of ArgNamed.
func CastSlice ¶
func CastSlice[E litsql.Expression](list []E) []litsql.Expression
CastSlice converts a slice of Expression-implemented items to a slice of litsql.Expression.
func Clause ¶ added in v0.8.0
func Clause(query string, args ...any) litsql.Expression
Clause parses the query, replacing any "?" with the dialect-specific argument matcher, and wraps the passed arguments. If the argument is a litsql.Expression, it will be output in-place.
func Func ¶ added in v0.8.0
func Func(f func() (litsql.Expression, error)) litsql.Expression
Func calls the function to return the expression to output.
func If ¶ added in v0.8.0
func If(condition bool, e litsql.Expression) litsql.Expression
If returns "e" if condition == true, nil otherwise.
func IfElse ¶ added in v0.8.0
func IfElse(condition bool, etrue, efalse litsql.Expression) litsql.Expression
IfElse returns "etrue" if condition == true, "efalse" otherwise.
func In ¶
func In(values []any) litsql.Expression
In outputs the list of values as Arg separated by commas.
func InP ¶
func InP(values []any) litsql.Expression
InP outputs the list of values as Arg separated by commas, wrapped in parentheses.
func InPT ¶ added in v0.6.4
func InPT[T any](values []T) litsql.Expression
InPT outputs the list of values as Arg separated by commas, wrapped in parentheses.
func InT ¶ added in v0.6.4
func InT[T any](values []T) litsql.Expression
InT outputs the list of values as Arg separated by commas.
func Join ¶ added in v0.8.0
func Join(exprs ...litsql.Expression) litsql.Expression
Join combines a list of litsql.Expression in a single expression, without a separator.
func JoinSep ¶ added in v0.8.0
func JoinSep(sep string, exprs ...litsql.Expression) litsql.Expression
JoinSep combines a list of litsql.Expression in a single expression, using the passed separator.
func MapSlice ¶ added in v0.6.1
func MapSlice[T any](source []T, mapFunc func(T) litsql.Expression) []litsql.Expression
MapSlice converts a slice of data to a slice of litsql.Expression using a map function.
func Or ¶
func Or(expr ...string) litsql.Expression
Or outputs the list of expressions separated by " OR ".
func OrExpr ¶ added in v0.8.0
func OrExpr(expr ...litsql.Expression) litsql.Expression
OrExpr outputs the list of expressions separated by " OR ".
func Paren ¶
func Paren(expr ...string) litsql.Expression
Paren returns an expression what outputs the list of expressions comma-separated with parenthesis around.
func ParenExpr ¶ added in v0.8.0
func ParenExpr(expr ...litsql.Expression) litsql.Expression
ParenExpr returns an expression what outputs the list of expressions comma-separated with parenthesis around.
func PrefixIf ¶ added in v0.3.2
func PrefixIf(condition bool, prefix litsql.Expression, e litsql.Expression) litsql.Expression
PrefixIf returns an expression with the passed prefix if condition == true, only the expression if false.
func Quote ¶
func Quote(aa ...string) litsql.Expression
Quote outputs quoted and joined, something like "users"."id".
func String ¶ added in v0.8.0
func String(str string) litsql.Expression
String returns a raw string expression.
func StringList ¶ added in v0.8.0
func StringList(str []string) []litsql.Expression
StringList converts a slice of strings to a slice of raw string expressions.
func StringListQuote ¶ added in v0.8.0
func StringListQuote(str []string) []litsql.Expression
StringListQuote converts a slice of strings to a slice of quoted raw string expressions.
func StringQuote ¶ added in v0.8.0
func StringQuote(str string) litsql.Expression
StringQuote returns a quoted string expression.
func WriterAddSeparator ¶
func WriterAddSeparator(topLevel bool) litsql.Expression
WriterAddSeparator calls litsql.Writer.AddSeparator.