Table 3 lists the common define/equate/equate-at operators and their associated bytecode flag words (the bytecode word following the define operator). Each flag word encodes the various binary properties of a define operator: it is the decimal representation of the columns in the table treated as binary digits (where a checkmark equals 1). The flags are: equate (0), update-members (1), add-members (2), new-target (3), relink-target (4), run-constructor (5), hidden (6), and unjammable (7). The last six operators that have asterisks in their names cannot be written into a script, but are generated automatically by the compiler in various situations.
name | abbr | symbol | flags | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
define | def | :: | 46 | X | X | X | X | ||||
member-define | mdf | *:: | 6 | X | X | ||||||
variable-define | vdf | @:: | 44 | X | X | X | |||||
equate | equ | = | 1 | X | |||||||
define-equate | deq | := | 47 | X | X | X | X | X | |||
equate-at | eqa | =@ | 16 | X | |||||||
define-equate-at | dqa | :=@ | 22 | X | X | X | |||||
~define | def* | N/A | 172 | X | X | X | X | ||||
~define-equate | deq* | N/A | 173 | X | X | X | X | X | |||
~define-equate-at | dqa* | N/A | 148 | X | X | X | |||||
~define | def** | N/A | 236 | X | X | X | X | X | |||
~define-equate | deq** | N/A | 237 | X | X | X | X | X | X | ||
~define | def-c** | N/A | 204 | X | X | X | X |
Last update: May 8, 2024