class AS_CALL_EXPR < $AS_EXPR |
---|
**** | Expressions which directly make a call. The parser should convert sugar expressions into these as well (except for /= which should be converted into an "=" expression and a call on "not"). |
$AS_EXPR | $NEXT{_} | $AS_NODE | $PROG_ERR | AS_EXPR | AS_NODE |
attr args:$AS_EXPR; |
---|
**** | The arguments, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr flip:BOOL; |
---|
**** | True if need to flip order of evaluation of arguments because orginated in a ">" or "<=" sugar expr. |
attr is_array:BOOL; |
---|
**** | True if this is a call with square brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr modes: AS_ARG_MODE; |
---|
**** | Modes of these arguments (if present) brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr name:IDENT; |
---|
**** | The name of the call. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr next:T; |
---|
**** | Pointer to next element in list, if any. |
attr ob:$AS_EXPR; |
---|
**** | The expr the call is made on, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr source:SFILE_ID; |
---|
**** | The origin of a node in a Sather source file. |
attr tp:AS_TYPE_SPEC; |
---|
**** | The class the call is made on, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr args:$AS_EXPR; |
---|
**** | The arguments, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr flip:BOOL; |
---|
**** | True if need to flip order of evaluation of arguments because orginated in a ">" or "<=" sugar expr. |
attr is_array:BOOL; |
---|
**** | True if this is a call with square brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr modes: AS_ARG_MODE; |
---|
**** | Modes of these arguments (if present) brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr name:IDENT; |
---|
**** | The name of the call. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr next:T; |
---|
**** | Pointer to next element in list, if any. |
attr ob:$AS_EXPR; |
---|
**** | The expr the call is made on, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
attr source:SFILE_ID; |
---|
**** | The origin of a node in a Sather source file. |
attr tp:AS_TYPE_SPEC; |
---|
**** | The class the call is made on, if any. brackets. "a(1,2)[3,4]" gets turned into 2 AS_CALL_EXPR objects, one for a(1,2), and one for [3,4]. of arguments because orginated in a ">" or "<=" sugar expr. |
append(l:T) |
---|
**** | Append the list `l' to the end of the list self. self may not be void but `l' may be. |
args_size:INT |
---|
create: SAME |
---|
**** | A new object with default initialization. |
insert(e:T) |
---|
**** | Insert the single element `e' after self. Neither may be void, `e.next' must be void. |
size:INT |
---|
**** | The number of elements in the list starting with self. Self may be void. |