Table of Contents

FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

2 Bitwise functions

All functions listed here are supported in:

Some general notes on function parameters:

  • Function parameters are separated by a comma
  • Expressions are accepted as parameters
  • Optional function parameters (or parameter parts) are indicated by < >
FUNCTION
Description Function-specific parameters Comments
bitand (mask)
Value of "bitwise AND" of an item value and mask. mask (mandatory) - 64-bit unsigned integer (0 - 18446744073709551615) Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.

Examples:
=> bitand(last(/host/key),12)=8 or bitand(last(/host/key),12)=4 → 3rd or 4th bit set, but not both at the same time
=> bitand(last(/host/key),20)=16 → 3rd bit not set and 5th bit set.
bitlshift (bits to shift)
Bitwise shift left of an item value. bits to shift (mandatory) - number of bits to shift Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.
bitnot
Value of "bitwise NOT" of an item value. Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.
bitor (mask)
Value of "bitwise OR" of an item value and mask. mask (mandatory) - 64-bit unsigned integer (0 - 18446744073709551615) Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.
bitrshift (bits to shift)
Bitwise shift right of an item value. bits to shift (mandatory) - number of bits to shift Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.
bitxor (mask)
Value of "bitwise exclusive OR" of an item value and mask. mask (mandatory) - 64-bit unsigned integer (0 - 18446744073709551615) Supported value types: int

Although the comparison is done in a bitwise manner, all the values must be supplied and are returned in decimal. For example, checking for the 3rd bit is done by comparing to 4, not 100.