func lptr
Coerces an expression into a long pointer.
Syntax
lptr (value)
Formal Declaration
lptr:lptr (value:any)
Parameters
value An expression to be coerced. All types are valid.
Derivation of the LPTR Bit Pattern
--------------------------------------------------------------------------------------------
| | |
| Parameter Type | Action |
| | |
--------------------------------------------------------------------------------------------
| | |
| BOOL | 0.1 if TRUE, 0.0 if FALSE. |
| | |
--------------------------------------------------------------------------------------------
| | |
| U16 | Set the high-order 32 bits (SID part) to zero. Right |
| S16 | justify the original 16-bit value in the low-order 32 bits |
| | (offset part) with zero fill. |
| | |
--------------------------------------------------------------------------------------------
| | |
| U32 | Set the high-order 32 bits (SID part) to zero. Transfer the |
| S32 | original bit pattern into the low-order 32 bits (offset |
| SPTR | part) unchanged. |
| | |
--------------------------------------------------------------------------------------------
| | |
| LPTR | Transfer both parts of the address unchanged. |
| PROG | |
| GRP | |
| PUB | |
| LGRP | |
| LPUB | |
| SYS | |
| USER | |
| TRANS | |
| CST | |
| CSTX | |
| | |
--------------------------------------------------------------------------------------------
| | |
| STR | Transfer the ASCII bit pattern for the last eight characters |
| | in the string. Strings shorter than eight characters are |
| | treated as if they were extended on the left with nulls. |
| | |
--------------------------------------------------------------------------------------------
Examples
$nmdat > wl lptr( 1 )
$0.1
$nmdat > wl lptr( ffff )
$0.ffff
$nmdat > wl lptr( 1234abcd )
$0.1234abcd
$nmdat > wl lptr( -1 )
$0.ffffffff
$nmdat > wl lptr( 1234.5678 )
$1234.5678
$nmdat > wl lptr( true )
$0.1
$nmdat > wl lptr( "ABCDEFG" )
$414243.44454647
$nmdat > wl lptr( prog(1.2) )
$1.2
Limitations, Restrictions
none