X (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (printtext)
m (printtext)
Line 20: Line 20:
</p>
</p>
<li><var>X</var> requires a method object <var class="term">string</var> with an even number of bytes.
<li><var>X</var> requires a method object <var class="term">string</var> with an even number of bytes.
<li><var>X</var> is available as of <var class="product">[[Sirius Mods|"Sirius Mods"]]</var> Version 7.3.
<li><var>X</var> is available as of <var class="product">[[Sirius Mods|Sirius Mods]]</var> Version 7.3.
</ul>
</ul>



Revision as of 17:46, 4 May 2011

Hex constant method (String class)

X is an intrinsic function that returns the unencoded value of a hex-encoded string. It is a compile-time-only equivalent of HexToString. Since, in use, it acts like a hex constant, it is also documented with the "Constant methods".

X treats each input character as an input hex digit.

Syntax

%outString = string:X

Syntax terms

%outString A string variable to receive the unencoded value of the method object string.
string A hex-encoded string value.

Usage notes

  • As in all "Janus Soap" system methods with string outputs, the output %outString variable provides longstring behavior. However, this adds 28 bytes of VTBL usage to every X constant.
  • Although its utility is dubious, the following is valid and sets %x to x'01':

    %x = 'f0f1':x:x

  • X requires a method object string with an even number of bytes.
  • X is available as of Sirius Mods Version 7.3.

Example

  1. The following statement would display 1234:

    printText {'f1f2f3f4':X}

See also