Certain fields in Podaris accept mathematical expressions and reference variables derived from attributes such as those associated with datasets.
Where Podaris accepts mathematical expressions, you may make use of a variety of operators and variables. The following is an inexhaustive list of operators accepted throughout Podaris.
Operator | Name | Syntax | Example | Result |
---|---|---|---|---|
(, ) | Grouping | (x) | 2 * (3 + 4) | 14 |
, | Parameter separator | x, y | max(2, 1, 5) | 5 |
. | Property accessor | obj.prop | obj={a: 12}; obj.a | 12 |
; | Statement separator | x; y | a=2; b=3; a*b | [6] |
+ | Add | x + y | 4 + 5 | 9 |
+ | Unary plus | +y | +4 | 4 |
- | Subtract | x - y | 7 - 3 | 4 |
- | Unary minus | -y | -4 | -4 |
* | Multiply | x * y | 2 * 3 | 6 |
/ | Divide | x / y | 6 / 2 | 3 |
%, mod | Modulus | x % y | 8 % 3 | 2 |
^ | Power | x ^ y | 2 ^ 3 | 8 |
and | Logical and | x and y | true and false | false |
not | Logical not | not y | not true | false |
or | Logical or | x or y | true or false | true |
xor | Logical xor | x xor y | true xor true | false |
= | Assignment | x = y | a = 5 | 5 |
? : | Conditional expression | x ? y : z | 15 > 100 ? 1 : -1 | -1 |
== | Equal | x == y | 2 == 4 - 2 | true |
!= | Unequal | x != y | 2 != 3 | true |
< | Smaller | x < y | 2 < 3 | true |
> | Larger | x > y | 2 > 3 | false |
<= | Smallereq | x <= y | 4 <= 3 | false |
>= | Largereq | x >= y | 2 + 4 >= 6 | true |