Skip to content

Predicate syntax

Maciej Klemarczyk edited this page Oct 22, 2021 · 8 revisions

Syntax tokens

  • { - Predicate opening
  • } - Predicate closing
  • , - Argument separator
  • $data - External variable
  • \ - Token escape, treats syntax characters as part of the text

Available predicates

  • = - equals, two arguments are equal
  • HasFlag - checks that number contains binary flag (LeftArg & RightArg == RightArg)
  • NOT - inverts logical value, changes True to False, and False to True
  • OR - combines two predicate, where one of two predicates has to be True
  • AND - combines two predicate, where both predicates has to be True

Examples

  • {=, 31, 41} - Number 31 is equal to number 41
  • {=, $data, 12\,33\, 12} - Value of $data is equal to text 12,33, 12
  • {=, $data, 41} - Value of $data is equal to number 41
  • {AND, {=, $data, 42}, {=,$user,11}} - Value of $data is equal to number 42 and value of $user is equal to number 11
  • {OR, {=, $data, 42}, {=,$user,11}} - Value of $data is equal to number 42 or value of $user is equal to number 11

Note

All comparisons are done using string type. Next version expects to compare values using type specific methods. The comparison for the NOT operator ignores the case of characters.

Clone this wiki locally