| class AS_CASE_WHEN < $AS_NODE |
|---|
| **** | A "when" clause of a "case" statement. The parser should make one of these for each object listed, eg. "when a,b,c then". When there are multiple targets, the `then_part's should be pointers to the same object. |
| $AS_NODE | $PROG_ERR | AS_NODE |
| attr next:T; |
|---|
| **** | Pointer to next element in list, if any. |
| attr source:SFILE_ID; |
|---|
| **** | The origin of a node in a Sather source file. |
| attr then_part:AS_STMT_LIST; |
|---|
| **** | The statements to execute. |
| attr val:$AS_EXPR; |
|---|
| **** | A value to compare against. |
| attr next:T; |
|---|
| **** | Pointer to next element in list, if any. |
| attr source:SFILE_ID; |
|---|
| **** | The origin of a node in a Sather source file. |
| attr then_part:AS_STMT_LIST; |
|---|
| **** | The statements to execute. |
| attr val:$AS_EXPR; |
|---|
| **** | A value to compare against. |
| append(l:T) |
|---|
| **** | Append the list `l' to the end of the list self. self may not be void but `l' may be. |
| 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. |