JExpressionImpl.java revision 524:dcaa586ab756
1/*
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.  Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26package com.sun.codemodel.internal;
27
28/**
29 * Provides default implementations for {@link JExpression}.
30 */
31public abstract class JExpressionImpl implements JExpression
32{
33    //
34    //
35    // from JOp
36    //
37    //
38    public final JExpression minus() {
39        return JOp.minus(this);
40    }
41
42    /**
43     * Logical not <tt>'!x'</tt>.
44     */
45    public final JExpression not() {
46        return JOp.not(this);
47    }
48
49    public final JExpression complement() {
50        return JOp.complement(this);
51    }
52
53    public final JExpression incr() {
54        return JOp.incr(this);
55    }
56
57    public final JExpression decr() {
58        return JOp.decr(this);
59    }
60
61    public final JExpression plus(JExpression right) {
62        return JOp.plus(this, right);
63    }
64
65    public final JExpression minus(JExpression right) {
66        return JOp.minus(this, right);
67    }
68
69    public final JExpression mul(JExpression right) {
70        return JOp.mul(this, right);
71    }
72
73    public final JExpression div(JExpression right) {
74        return JOp.div(this, right);
75    }
76
77    public final JExpression mod(JExpression right) {
78        return JOp.mod(this, right);
79    }
80
81    public final JExpression shl(JExpression right) {
82        return JOp.shl(this, right);
83    }
84
85    public final JExpression shr(JExpression right) {
86        return JOp.shr(this, right);
87    }
88
89    public final JExpression shrz(JExpression right) {
90        return JOp.shrz(this, right);
91    }
92
93    public final JExpression band(JExpression right) {
94        return JOp.band(this, right);
95    }
96
97    public final JExpression bor(JExpression right) {
98        return JOp.bor(this, right);
99    }
100
101    public final JExpression cand(JExpression right) {
102        return JOp.cand(this, right);
103    }
104
105    public final JExpression cor(JExpression right) {
106        return JOp.cor(this, right);
107    }
108
109    public final JExpression xor(JExpression right) {
110        return JOp.xor(this, right);
111    }
112
113    public final JExpression lt(JExpression right) {
114        return JOp.lt(this, right);
115    }
116
117    public final JExpression lte(JExpression right) {
118        return JOp.lte(this, right);
119    }
120
121    public final JExpression gt(JExpression right) {
122        return JOp.gt(this, right);
123    }
124
125    public final JExpression gte(JExpression right) {
126        return JOp.gte(this, right);
127    }
128
129    public final JExpression eq(JExpression right) {
130        return JOp.eq(this, right);
131    }
132
133    public final JExpression ne(JExpression right) {
134        return JOp.ne(this, right);
135    }
136
137    public final JExpression _instanceof(JType right) {
138        return JOp._instanceof(this, right);
139    }
140
141    //
142    //
143    // from JExpr
144    //
145    //
146    public final JInvocation invoke(JMethod method) {
147        return JExpr.invoke(this, method);
148    }
149
150    public final JInvocation invoke(String method) {
151        return JExpr.invoke(this, method);
152    }
153
154    public final JFieldRef ref(JVar field) {
155        return JExpr.ref(this, field);
156    }
157
158    public final JFieldRef ref(String field) {
159        return JExpr.ref(this, field);
160    }
161
162    public final JArrayCompRef component(JExpression index) {
163        return JExpr.component(this, index);
164    }
165}
166