- Contents
Interaction Designer Help
Operators
Operators are reserved words in expressions that act on literal values and variables. For each normal data type, there is a set of operators that produce that data type. For example, mathematical operators perform addition, subtraction, multiplication, and other operations on integer and numeric values. String operators process strings, and so on.
Expression Editor Assistant limits your choice of operators to those that are legal for the input parameter or selected operand. For example, if you are editing an input parameter that expects a string, then only operators that result in strings are displayed in Expression Editor Assistant. This rule also applies to operands. If you select an operand that expects an integer, Expression Editor Assistant limits your operator choices to those that produce an integer.
Operator Categories
For each normal value type, there are several operators that produce a value of that type. Click on one of the links below for a list of operators available for that type.
Operands (Arguments)
Just like tools in a handler have parameters, many operators take arguments, or operands. For example, the operator for addition takes two input operands: ? + ?. Addition takes two integer or two numeric values for operands. When you insert an operator into an expression, the unfilled operands are represented with a "?" character.
Nested Operators
While you can use several assignment steps to construct complex expressions, you can also build complex expressions with nested operators. For example, StrLen ("User Queue: " & QueueNameStr) returns the length of "User Queue: " combined with the string contained in QueueNameStr variable.
CIC resolves the most deeply nested (innermost) operator(s) first, then works out to the least, or highest level operator. For example, in the following expression, red would be resolved first, then blue, then green.
StrLen (I>S(5*5) & UserName)
Order of Operations
In general, all arguments to functions are fully evaluated before the function is called, and all operands to operators are evaluated before the operator is applied. Exceptions are the And and Or operators, and the Test function, which may not evaluate all of their arguments. The order of evaluation for "sibling" subexpressions occurs left to right.