SPI Programming Manual (G06.24+, H06.03+, J06.03+)

SPI Programming in TACL
SPI Programming Manual427506-006
8-5
Token Values
Token Values
These pages give the TACL types, value ranges, external representations, and special
considerations for token values of the various token data types.
TACL Types and Value Ranges
In the definition files for SPI and the various NonStop Kernel subsystems, most tokens
and token fields translate into appropriate TACL variable and field types, including
high-level TACL types such as CRTPID, FNAME, and TIMESTAMP.
Table 8-1
lists the SPI token data types that TACL recognizes and gives, for each, the
corresponding TACL type used in the ZSPIDEF.
subsysTACL definition files and the
acceptable range of values for an item of the basic length of that token data type.
TACL performs type checking on token values and reports any incompatibilities
between the values and the corresponding TACL types. To perform comparisons and
assignments involving type-incompatible null values or reset values, see Identifying
Null Values on page 8-7 and Setting Reset Values on page 8-8.
TACL does not fill in default values for missing fields in values of token data types
ZSPI^TDT^FNAME, ZSPI^TDT^FNAME32, or ZSPI^TDT^SUBVOL.
TACL interprets token data types it does not recognize (including ZSPI^TDT^LIST,
ZSPI^TDT^MARK, ZSPI^TDT^FLT, and ZSPI^TDT^FLT2) as if they were
ZSPI^TDT^INT. This action of TACL causes no problems for the first two token data
types (because they are of token length 0 and have no corresponding token values),
but it amounts to nonsupport for the floating-point token data types.
Table 8-1. TACL Data Types for SPI (page 1 of 2)
Token Data Type TACL Type Value Range
ZSPI^TDT^BOOLEAN BOOL -32768 through 32767
ZSPI^TDT^BYTE BYTE 0 through 255
ZSPI^TDT^CHAR CHAR Binary 0 through 127
ZSPI^TDT^CRTPID CRTPID Any valid internal-format process ID
ZSPI^TDT^DEVICE DEVICE Any valid internal-format device name
ZSPI^TDT^ENUM ENUM 32768 through 32767
ZSPI^TDT^ERROR SSID plus INT Any valid subsystem ID followed by a
number from -32768 through 32767
ZSPI^TDT^FNAME FNAME Any valid 24-byte internal-format file name
ZSPI^TDT^FNAME32 FNAME32 Any valid 8-byte internal-format system name
followed by any valid 24-byte internal-format
local file name
ZSPI^TDT^INT INT -32768 through 32767
ZSPI^TDT^INT2 INT2 -2147483648 through 2147483647