jet/sqlbuilder/literal_expression.go
2019-05-07 19:06:21 +02:00

36 lines
738 B
Go

package sqlbuilder
// Representation of an escaped literal
type literalExpression struct {
expressionInterfaceImpl
value interface{}
}
func Literal(value interface{}) *literalExpression {
exp := literalExpression{value: value}
exp.expressionInterfaceImpl.parent = &exp
return &exp
}
func (l literalExpression) serialize(out *queryData) error {
out.InsertArgument(l.value)
return nil
}
type numLiteralExpression struct {
literalExpression
numericInterfaceImpl
}
func IntLiteral(value int) numericExpression {
numLiteral := &numLiteralExpression{}
numLiteral.literalExpression = *Literal(value)
numLiteral.literalExpression.parent = numLiteral
numLiteral.numericInterfaceImpl.parent = numLiteral
return numLiteral
}