OSDN Git Service

Wed Oct 28 08:03:31 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
[pf3gnuchains/gcc-fork.git] / gcc / java / java-tree.def
1 /* Shift right, logical. */
2
3 DEFTREECODE (URSHIFT_EXPR, "urshift_expr", '2', 2)
4
5 /* Return -1, 0, 1 depending on whether the first argument is
6    less, equal, or greater to the second argument. */
7 DEFTREECODE (COMPARE_EXPR, "compare_expr", '2', 2)
8
9 /* Same as COMPARE_EXPR, but if either value is NaN, the result is -1. */
10 DEFTREECODE (COMPARE_L_EXPR, "compare_l_expr", '2', 2)
11 /* Same as COMPARE_EXPR, but if either value is NaN, the result is 1. */
12 DEFTREECODE (COMPARE_G_EXPR, "compare_g_expr", '2', 2)
13
14 /* Unary plus. Operand 0 is the expression the unary plus is applied
15    to */
16 DEFTREECODE (UNARY_PLUS_EXPR, "unary_plus_expr", '1', 1)
17
18 /* New array creation expression.
19    Operand 0 is the array base type.
20    Operand 1 is the list of dimension expressions. 
21    Operand 2 is the number of other dimensions of unspecified range.
22    Once patched, the node will bear the type of the created array.  */
23 DEFTREECODE (NEW_ARRAY_EXPR, "new_array_expr", 'e', 3)
24
25 /* New class creation expression.
26    Operand 0 is the name of the class to be created
27    Operand 1 is the argument list used to select a constructor.
28    There is no operand 2.  That slot is used for the
29    CALL_EXPR_RTL macro (see preexpand_calls).
30    The type should be the one of the created class.  */
31 DEFTREECODE (NEW_CLASS_EXPR, "new_class_expr", 'e', 3)
32
33 /* Defines `this' as an expression.  */
34 DEFTREECODE (THIS_EXPR, "this", '1', 0)
35
36 /* Case statement expression.
37    Operand 1 is the case value.  */
38 DEFTREECODE (CASE_EXPR, "case", '1', 1)
39
40 /* Default statement expression. */
41 DEFTREECODE (DEFAULT_EXPR, "default", '1', 0)
42
43 /* Try expression
44    Operand 0 is the tried block,
45    Operand 1 contains chained catch nodes
46    Operand 2 contains the finally clause.  */
47 DEFTREECODE (TRY_EXPR, "try-catch-finally", 'e', 3)
48
49 /* Catch clause.
50    Operand 0 is the catch clause block, which contains the declaration of
51    the catch clause parameter.  */
52 DEFTREECODE (CATCH_EXPR, "catch", '1', 1)
53
54 /* Finally clause.
55    Operand 0 is the finally label.
56    Operand 1 is the finally block.  */
57 DEFTREECODE (FINALLY_EXPR, "finally", 'e', 2) 
58
59 /* Synchronized statement.
60    Operand 0 is the expression on which we whish to synchronize,
61    Operand 1 is the synchronized expression block.  */
62 DEFTREECODE (SYNCHRONIZED_EXPR, "synchronized", 'e', 2)
63
64 /* Throw statement.
65    Operand 0 is the throw expresion.  */
66 DEFTREECODE (THROW_EXPR, "throw", '1', 1)
67
68 /* Conditional operator.
69    Operand 0 is the condition expression
70    Operand 1 is the then-value
71    Operand 2 is the else-value.  */
72 DEFTREECODE (CONDITIONAL_EXPR, "?:", 'e', 3)