jet/sqlbuilder/literal_expression.go
2019-05-08 13:47:01 +02:00

36 lines
763 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(statement statementType, 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
}