1 /* ====== BEGIN INCLUDE SEGEMENT        apl_operators_argument.incl.pl1 =========================== */
 2 
 3 declare   1 operators_argument          aligned,
 4             2 operands (2)              aligned,            /* these are the operands to the operator to be executed.
 5                                                                if operand (1).value is null, operator is monadic */
 6               3 value                   pointer unaligned,  /* a pointer to the value bead for this operand */
 7               3 on_stack                bit (1) aligned,    /* ON if this value resides on the value stack */
 8             2 operator                  aligned,            /* information about the operator to be executed */
 9               3 dimension               fixed bin,          /* (optional) dimension along which to operate */
10               3 padding                 bit (18) unaligned, /* unused part of operator bead */
11               3 op2                     fixed bin (8) unal, /* a modifier for op1, or a 2nd operator if inner product */
12               3 op1                     fixed bin (8) unal, /* code for the actual operator to be executed */
13             2 result                    pointer unal,       /* (output) set by operator to point to result bead in stack */
14             2 error_code                fixed bin (35),     /* (output) set before signaling apl_operator_error_ */
15             2 where_error               fixed bin;          /* parseme index of where error was - parse sets to operator */
16 
17 /* ------ END INCLUDE SEGMENT           apl_operators_argument.incl.pl1 --------------------------- */