module Orville.PostgreSQL.Expr.Math
( plus
, minus
, multiply
, divide
, modulo
, exponentiate
, bitwiseAnd
, bitwiseOr
, bitwiseXor
, bitwiseShiftLeft
, bitwiseShiftRight
)
where
import Orville.PostgreSQL.Expr.BinaryOperator (binaryOpExpression, bitwiseAndOp, bitwiseOrOp, bitwiseShiftLeftOp, bitwiseShiftRightOp, bitwiseXorOp, divisionOp, exponentiationOp, minusOp, moduloOp, multiplicationOp, plusOp)
import Orville.PostgreSQL.Expr.ValueExpression (ValueExpression)
plus :: ValueExpression -> ValueExpression -> ValueExpression
plus :: ValueExpression -> ValueExpression -> ValueExpression
plus =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
plusOp
minus :: ValueExpression -> ValueExpression -> ValueExpression
minus :: ValueExpression -> ValueExpression -> ValueExpression
minus =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
minusOp
multiply :: ValueExpression -> ValueExpression -> ValueExpression
multiply :: ValueExpression -> ValueExpression -> ValueExpression
multiply =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
multiplicationOp
divide :: ValueExpression -> ValueExpression -> ValueExpression
divide :: ValueExpression -> ValueExpression -> ValueExpression
divide =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
divisionOp
modulo :: ValueExpression -> ValueExpression -> ValueExpression
modulo :: ValueExpression -> ValueExpression -> ValueExpression
modulo =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
moduloOp
exponentiate :: ValueExpression -> ValueExpression -> ValueExpression
exponentiate :: ValueExpression -> ValueExpression -> ValueExpression
exponentiate =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
exponentiationOp
bitwiseAnd :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseAnd :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseAnd =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
bitwiseAndOp
bitwiseOr :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseOr :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseOr =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
bitwiseOrOp
bitwiseXor :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseXor :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseXor =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
bitwiseXorOp
bitwiseShiftLeft :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseShiftLeft :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseShiftLeft =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
bitwiseShiftLeftOp
bitwiseShiftRight :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseShiftRight :: ValueExpression -> ValueExpression -> ValueExpression
bitwiseShiftRight =
BinaryOperator
-> ValueExpression -> ValueExpression -> ValueExpression
forall sql.
SqlExpression sql =>
BinaryOperator -> ValueExpression -> ValueExpression -> sql
binaryOpExpression BinaryOperator
bitwiseShiftRightOp