ADC Advanced Policy Expressions

NUM_AT

Number Value

This topic lists the expressions that are provided by this class.

ABS

Return the absolute value of the number.

Returns: num_at

* ADD(double_ati)

Return the Double Value after adding the argument to the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* ADD(ip_address_ati)

Return the Unsigned Long after adding the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* ADD(unsigned_long_ati)

Return the Unsigned Long after adding the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

ADD(num_ati)

Return the Number Value after adding the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* ADD(time_ati)

Return the Unsigned Long after adding the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

APPEND(text_tstr)

Appends the given string to the string representation of the current

number.

Parameters:

str -

                        the string to append.

Returns: text_t

* AS_MICROSEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.ffffff GMT

     ffffff represents microseconds

Examples:

Mon, 05 Mar 2018 10:23:36.568419 GMT

Returns: text_t

* AS_MILLISEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.fff GMT

     fff represents milliseconds

Examples:

Mon, 05 Mar 2018 10:23:36.568 GMT

Returns: text_t

* AS_NANOSEC_STR

Returns the current system time in the following format

Format: Wday, day Month year hh:mm:ss.fffffffff GMT

     fffffffff represents nanoseconds

Accuracy may be at larger granularity than nanosecond resolution.

Examples:

Mon, 05 Mar 2018 10:23:36.568419567 GMT

Returns: text_t

* BETWEEN(double_ati, double_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(double_ati, ip_address_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(double_ati, unsigned_long_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(ip_address_ati, double_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(ip_address_ati, ip_address_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(ip_address_ati, unsigned_long_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(unsigned_long_ati, double_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(unsigned_long_ati, ip_address_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(unsigned_long_ati, unsigned_long_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(double_ati, num_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(ip_address_ati, num_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(unsigned_long_ati, num_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(double_ati, time_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(ip_address_ati, time_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(unsigned_long_ati, time_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(num_ati, double_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(num_ati, ip_address_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(num_ati, unsigned_long_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

BETWEEN(num_ati, num_atj)

Returns Boolean TRUE if the number value is greater than or

equal to the Lower argument and the number value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(num_ati, time_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(time_ati, double_atj)

Returns Boolean TRUE if the double value is greater than or

equal to the Lower argument and the double value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(time_ati, ip_address_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(time_ati, unsigned_long_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(time_ati, num_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BETWEEN(time_ati, time_atj)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the Lower argument and the unsigned long value is lesser

than or equal to the Upper argument.

Parameters:

i -

                        Lower

j -

                        Upper

Returns: bool_at

* BITAND(ip_address_ati)

Return the Unsigned Long Value after bitwise ANDing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* BITAND(unsigned_long_ati)

Return the Unsigned Long Value after bitwise ANDing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

BITAND(num_ati)

Return the Number Value after bitwise ANDing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITAND(time_ati)

Return the Unsigned Long Value after bitwise ANDing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

BITNEG

Return the Number Value after bitwise negating the current number

value.

Returns: num_at

* BITOR(ip_address_ati)

Return the Unsigned Long Value after bitwise ORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* BITOR(unsigned_long_ati)

Return the Unsigned Long Value after bitwise ORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

BITOR(num_ati)

Return the Number Value after bitwise ORing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITOR(time_ati)

Return the Unsigned Long Value after bitwise ORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* BITXOR(ip_address_ati)

Return the Unsigned Long Value after bitwise XORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* BITXOR(unsigned_long_ati)

Return the Unsigned Long Value after bitwise XORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

BITXOR(num_ati)

Return the Number Value after bitwise XORing the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* BITXOR(time_ati)

Return the Unsigned Long Value after bitwise XORing the argument to

the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* DIV(double_ati)

Return the Double Value after dividing the current double

value by the argument.

Parameters:

i -

                        Double

Returns: double_at

* DIV(ip_address_ati)

Return the Unsigned Long Value after dividing the current unsigned

long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* DIV(unsigned_long_ati)

Return the Unsigned Long Value after dividing the current unsigned

long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

DIV(num_ati)

Return the Number Value after dividing the current number

value by the argument.

Parameters:

i -

                        Number

Returns: num_at

* DIV(time_ati)

Return the Unsigned Long Value after dividing the current unsigned

long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* EQ(double_ati)

Returns Boolean TRUE if the double value is equal to

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* EQ(ip_address_ati)

Returns Boolean TRUE if the unsigned long is equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* EQ(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long is equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

EQ(num_ati)

Returns Boolean TRUE if the number value is equal to

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* EQ(time_ati)

Returns Boolean TRUE if the unsigned long is equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GE(double_ati)

Returns Boolean TRUE if the double value is greater than or

equal to the argument.

Parameters:

i -

                        Double

Returns: bool_at

* GE(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GE(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

GE(num_ati)

Returns Boolean TRUE if the number value is greater than or

equal to the argument.

Parameters:

i -

                        Number

Returns: bool_at

* GE(time_ati)

Returns Boolean TRUE if the unsigned long value is greater than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GT(double_ati)

Returns Boolean TRUE if the double value is greater than the

argument.

Parameters:

i -

                        Double

Returns: bool_at

* GT(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is greater than the

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* GT(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is greater than the

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

GT(num_ati)

Returns Boolean TRUE if the number value is greater than the

argument.

Parameters:

i -

                        Number

Returns: bool_at

* GT(time_ati)

Returns Boolean TRUE if the unsigned long value is greater than the

argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LE(double_ati)

Returns Boolean TRUE if the double value is lesser than or

equal to the argument.

Parameters:

i -

                        Double

Returns: bool_at

* LE(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is lesser than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LE(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is lesser than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

LE(num_ati)

Returns Boolean TRUE if the number value is lesser than or

equal to the argument.

Parameters:

i -

                        Number

Returns: bool_at

* LE(time_ati)

Returns Boolean TRUE if the unsigned long value is lesser than or

equal to the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

LSHIFT(uint i)

Return the Number Value after bitwise left shifting the current

number value by the argument number of bits. Note that the number

of bits shifted is i modulo 32. For example,

let HTTP.REQ.URL.LENGTH be 4. Then,

HTTP.REQ.URL.LENGTH.LSHIFT(1) = HTTP.REQ.URL.LENGTH.LSHIFT(33) = 8,

since 33 on division by 32 yields a remainder of 1.

Parameters:

i -

                        Left Shift Length

Returns: num_at

* LT(double_ati)

Returns Boolean TRUE if the double value is lesser than

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* LT(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* LT(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

LT(num_ati)

Returns Boolean TRUE if the number value is lesser than

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* LT(time_ati)

Returns Boolean TRUE if the unsigned long value is lesser than

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* MAX(double_ati)

Return the maximum double value after comparing

the argument with the current double value.

Parameters:

i -

                        Double

Returns: double_at

* MAX(ip_address_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MAX(unsigned_long_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

MAX(num_ati)

Return the maximum value after comparing the argument

with the current number value.

Parameters:

i -

                        Number

Returns: num_at

* MAX(time_ati)

Return the maximum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MIN(double_ati)

Return the minimum double value after comparing

the argument with the current double value.

Parameters:

i -

                        Double

Returns: double_at

* MIN(ip_address_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MIN(unsigned_long_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

MIN(num_ati)

Return the minimum value after comparing the argument

with the current number value.

Parameters:

i -

                        Number

Returns: num_at

* MIN(time_ati)

Return the minimum unsigned long value after comparing the argument

value to the current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MOD(ip_address_ati)

Return the Unsigned Long Value that is the renaminder after dividing

the current unsigned long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MOD(unsigned_long_ati)

Return the Unsigned Long Value that is the renaminder after dividing

the current unsigned long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

MOD(num_ati)

Return the Number Value that is the renaminder after dividing the

current number value by the argument.

Parameters:

i -

                        Number

Returns: num_at

* MOD(time_ati)

Return the Unsigned Long Value that is the renaminder after dividing

the current unsigned long value by the argument.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MUL(double_ati)

Return the Double Value after multiplying the argument to the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* MUL(ip_address_ati)

Return the Unsigned Long Value after multiplying the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* MUL(unsigned_long_ati)

Return the Unsigned Long Value after multiplying the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

MUL(num_ati)

Return the Number Value after multiplying the argument to the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* MUL(time_ati)

Return the Unsigned Long Value after multiplying the argument to the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

NEG

Return the Number Value after negating the current number

value.

Returns: num_at

* NE(double_ati)

Returns Boolean TRUE if the double value is not equal to

the argument.

Parameters:

i -

                        Double

Returns: bool_at

* NE(ip_address_ati)

Returns Boolean TRUE if the unsigned long value is not equal to

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

* NE(unsigned_long_ati)

Returns Boolean TRUE if the unsigned long value is not equal to

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

NE(num_ati)

Returns Boolean TRUE if the number value is not equal to

the argument.

Parameters:

i -

                        Number

Returns: bool_at

* NE(time_ati)

Returns Boolean TRUE if the unsigned long value is not equal to

the argument.

Parameters:

i -

                        Unsigned Long

Returns: bool_at

RSHIFT(uint i)

Return the Number Value after bitwise right shifting the current

number value by the argument number of bits. Note that the number

of bits shifted is i modulo 32. For example,

let HTTP.REQ.URL.LENGTH be 4. Then,

HTTP.REQ.URL.LENGTH.RSHIFT(1) = HTTP.REQ.URL.LENGTH.RSHIFT(33) = 2,

since 33 on division by 32 yields a remainder of 1.

Parameters:

i -

                        Right Shift Length

Returns: num_at

SIGNED16_STRING(endian_eendianness)

Create a signed 16-bit binary string from the number.

Parameters(expressions not allowed):

endianness -

                        Select little or big endian

Returns: text_t

SIGNED32_STRING(endian_eendianness)

Create a signed 32-bit binary string from the number.

Parameters(expressions not allowed):

endianness -

                        Select little or big endian

Returns: text_t

SIGNED8_STRING

Create a signed 8-bit binary string from the number.

Returns: text_t

* SUB(double_ati)

Return the Double Value after subtracting the argument from the

current double value.

Parameters:

i -

                        Double

Returns: double_at

* SUB(ip_address_ati)

Return the Unsigned Long Value after subtracting the argument from the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

* SUB(unsigned_long_ati)

Return the Unsigned Long Value after subtracting the argument from the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

SUB(num_ati)

Return the Number Value after subtracting the argument from the

current number value.

Parameters:

i -

                        Number

Returns: num_at

* SUB(time_ati)

Return the Unsigned Long Value after subtracting the argument from the

current unsigned long value.

Parameters:

i -

                        Unsigned Long

Returns: unsigned_long_at

TYPECAST_DOUBLE_AT

Typecast the Number Value to a Double value.

Returns: double_at

TYPECAST_IP_ADDRESS_AT

Typecast the Number Value to an IP Address value.

Returns: ip_address_at

* TYPECAST_NUM_AT

Typecast the Unsigned Long Value to a Number value.

Returns: num_at

TYPECAST_TEXT_T

Typecast the Number Value to its string representation.

Returns: text_t

TYPECAST_TIME_AT

Typecast the Number Value to a Time value.

Returns: time_at

TYPECAST_UNSIGNED_LONG_AT

Typecast the Number Value to a Unsigned Long value.

Returns: unsigned_long_at

UNSIGNED16_STRING(endian_eendianness)

Create an unsigned 16-bit binary string from the number.

Parameters(expressions not allowed):

endianness -

                        Select little or big endian

Returns: text_t

* UNSIGNED32_STRING(endian_eendianness)

Create an unsigned 32-bit binary string from the number.

Parameters(expressions not allowed):

endianness -

                        Select little or big endian

Returns: text_t

* UNSIGNED64_STRING(endian_eendianness)

Create an unsigned 64-bit binary string from the number.

Parameters(expressions not allowed):

endianness -

                        Select little or big endian

Returns: text_t

UNSIGNED8_STRING

Create an unsigned 8-bit binary string from the number.

Returns: text_t

WEEKDAY_STRING

Given the numeric day of the week, e.g. SYS.TIME.WEEKDAY,

return the long form of the string name for that day, e.g.

0 = "Sunday", 6 = "Saturday".

Returns: text_t

WEEKDAY_STRING_SHORT

Given the numeric day of the week, e.g. SYS.TIME.WEEKDAY,

return the short form of the string name for that day, e.g.

0 = "Sun", 6 = "Sat".

Returns: text_t

NUM_AT

In this article