X (String function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
{{Template:String:X subtitle}}
This [[Intrinsic classes|intrinsic]] function returns the unencoded value of a hex-encoded string.   
This [[Intrinsic classes|intrinsic]] function returns the unencoded value of a hex-encoded string.   
It is a compile-time-only equivalent of the [[HexToString (String function)|HexToString]] method.   
It is a compile-time-only equivalent of the [[HexToString (String function)|HexToString]] method.   
Line 7: Line 9:
                                                                                                      
                                                                                                      
The X method is available as of [[Sirius Mods]] version 7.3.                                         
The X method is available as of [[Sirius Mods]] version 7.3.                                         
===X syntax===                                                                                      
==Syntax==
  %out = string:X                                                                                  
{{Template:String:X syntax}}
===Syntax Terms===                                                                                  
===Syntax terms===
<dl>                                                                                                 
<dl>                                                                                                 
<dt>%out                                                                                             
<dt>%out                                                                                             
Line 17: Line 19:
                                                                                                      
                                                                                                      
</dl>                                                                                                 
</dl>                                                                                                 
===Usage Notes===                                                                                  
==Usage notes==
*As in all '''''Janus SOAP''''' system methods with string outputs, the ''%out'' string variable provides [[Longstrings|longstring]] behavior. This adds 28 bytes of VTBL usage to every X constant, however.                     
*As in all '''''Janus SOAP''''' system methods with string outputs, the ''%out'' string variable provides [[Longstrings|longstring]] behavior. This adds 28 bytes of VTBL usage to every X constant, however.                     
*Although its utility is dubious, the following is valid and sets %x to ''''X'01''''':               
*Although its utility is dubious, the following is valid and sets %x to ''''X'01''''':               

Revision as of 05:14, 19 January 2011

Hex constant method (String class)


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

The X function treats each input character as an input hex digit.

The X method is available as of Sirius Mods version 7.3.

Syntax

%outString = string:X

Syntax terms

%out
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 %out string variable provides longstring behavior. This adds 28 bytes of VTBL usage to every X constant, however.
  • Although its utility is dubious, the following is valid and sets %x to 'X'01:
   %x = 'f0f1':x:x                                                                                  
  • The X function requires a method object string with an even number of bytes.

Example

The following statement would display '1234':

   printText {'f1f2f3f4':x}

See also

List of intrinsic String methods