Operators
Table of Contents
Overview
Operators are a form of functions which acts on one or two values and return a value. Very commonly used functions are given operator status and are invoked by special symbols such as '+' for addition, '' for subtraction etc.
Example:
(7 * 7) + 4 = 53
"Hello" + "world" = "Hello world" // concatenates string values
Arithmetic Operators
An arithmetic operator, operates on one or two numeric value and returns a numeric value.
It operates on two values and hence called binary arithmetic operators.
Syntax
<op1> <Operator> <op2>
where, <op1> and <op2> are both numeric expressions. The table below lists the binary arithmetic operators and their functionality:
Operator  Syntax  Description 
+  x + y  Addition operator: Adds the value of x to the value of y.

  x  y  Subtraction operator: Subtracts the value of y from the value of x.

*  x * y  multiplies <op1> and <op2> 
/  x / y  divides <op1> by <op2> 
%  x % y  remainder when dividing <op1> by <op2> 
It operates on single value.
Syntax
<operator> <op1>
where, <op1> is a numeric expression. The table below lists the unary arithmetic operators and their functionality:
Operator  Functionality 
+  functionality wise, it has no effect 
  negates the given value 
Relational Operators
A relational operator compares two values and returns a boolean expression (true or false) depending on the relation between the two values.
Example
5 > 4 // returns true
233.6 < 94.22 // returns false
Syntax
<op1> <Operator> <op2>
The table below lists the binary arithmetic operators and their functionality:
Operator  Functionality 
>  <op1> is greater than <op2> 
>=  <op1> is greater than or equal to <op2> 
<  <op1> is less than <op2> 
<=  <op1> is less than or equal to <op2> 
==  <op1> is equal to <op2> 
!=  <op1> is not equal to <op2> 
Conditional Operators
Relational operator combined with conditional operators, make your decision making more powerful. A conditional operator operates on boolean expression and each boolean expression may contain relational operator or conditional operator, thus enabling us to write complex decision logics. Deluge supports the conditional operators '&&' , '' and '!'.
Syntax
<boolean expression> && <boolean expression>
<boolean expression>  <boolean expression>
! <boolean expression>
where,
'&&'  returns true only if both the left and right boolean expressions are true.
''  returns true if atleast one of the boolean expression evaluates to true.
'!'  returns true if the boolean expression is false and viceversa.
Operator  Functionality 
&&  Both the left and right boolean expressions are true 
ll  Atleast one of the boolean expression is true 
!  boolean expression is false 
List Operators  in, not in
The "in" and "not in" list operators define a criteria in 'for each' or 'fetch' tasks.
1. The List Operator in checks whether a value is within a set of values
Syntax
<expression1> in <expression2>
where, the right expression should be of type "List"
2. The List Operator not in checks whether a value is not within a set of values
Syntax
<expression1> not in <expression2>
where, the right expression should be of type "List"
Example
If you wish to fetch some records based on field value being part of a list (say Client is a field and values required are "Jasper", "Edward" or "Alice"), then you may add those values in a list (say clientList) and then utilize this list in your criteria to fetch the required records.If you wish to exclude some values from fetching, use "not in" in your criteria. This is a simplified model of [Client =="Jasper" Client =="Edward" Client =="Alice"]
 clientList = {"Jasper", "Edward", "Alice"};
 <variable> = form_name[Client in clientList];