Define a user type. DIM var AS name, DIM arr(n) AS name, LOCAL and STATIC. SUB/FUNCTION parameters and FUNCTION return use AS name too. PIXEL and MATH accept arr().member as a view of that field across the array. See STRUCT. LIST TYPE [name] lists definitions.
TYPE name member AS INTEGER|FLOAT|STRING [LENGTH n] member AS othertype END TYPE
name - type name member - field name LENGTH n - string capacity for STRING members (default 1024); assigning
more than n characters raises ?OVERFLOW
othertype - nested TYPE name
Members: INTEGER (64-bit), FLOAT, STRING LENGTH n, nested types. INT means INTEGER inside TYPE. Access with var.member and arr(i).member. Whole-struct assign copies the same type only. A period can appear in a variable name unless the left side is a TYPE variable.
Example:
TYPE Point
x AS INTEGER
y AS INTEGER
END TYPE
DIM p AS Point = (10, 20)
PRINT p.x
Source: docs/help/type.txt inmmcore. On the computer, typeHELP TYPE.