$Lstr_X2C
Convert from hexadecimal to byte string
Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $Lstr_X2C function is the HexToString (String function).
This function converts from a hexadecimal encoded string to the decoded byte string. It is identical to $X2C (see the Rocket Model 204 User Language Manual), except it is longstring capable.
The $Lstr_X2C function accepts one argument and returns a string result whose hexadecimal encoding is that argument.
The first argument is a longstring which is a hexadecimal encoding.
The returned value is the hexadecimal decoding of the argument string. If the argument is not a valid hexadecimal encoding, the null string is returned.
Syntax
<section begin="syntax" /> %DECODED = $Lstr_X2C(string) <section end="syntax" />
For example, the following code
PRINT $Lstr_X2C('D985844099A494')
would print Red rum, which is the character representation of the EBCDIC characters represented in hexadecimal as "D985844099A494".
You can check for an invalid hexadecimal encoding by checking for the null string return value from $Lstr_X2C. Of course, if it is possible that the argument is null, the null string is a valid returned value. If you need to check for errors, and the null string is a possible argument value, you can use an approach such as the following:
%STR = $Lstr_X2C(%IN) IF %STR EQ IF %IN NE THEN error code ... END IF END IF
$Lstr_C2X is the inverse of $Lstr_X2C.
This $function is new in Version 6.8 of the Sirius Mods.