219 /** Simple identifiers, of type Ident.
220 */
221 public static final int IDENT = SELECT + 1;
222
223 /** Literals, of type Literal.
224 */
225 public static final int LITERAL = IDENT + 1;
226
227 /** Basic type identifiers, of type TypeIdent.
228 */
229 public static final int TYPEIDENT = LITERAL + 1;
230
231 /** Array types, of type TypeArray.
232 */
233 public static final int TYPEARRAY = TYPEIDENT + 1;
234
235 /** Parameterized types, of type TypeApply.
236 */
237 public static final int TYPEAPPLY = TYPEARRAY + 1;
238
239 /** Disjunction types, of type TypeDisjunction
240 */
241 public static final int TYPEDISJUNCTION = TYPEAPPLY + 1;
242
243 /** Formal type parameters, of type TypeParameter.
244 */
245 public static final int TYPEPARAMETER = TYPEDISJUNCTION + 1;
246
247 /** Type argument.
248 */
249 public static final int WILDCARD = TYPEPARAMETER + 1;
250
251 /** Bound kind: extends, super, exact, or unbound
252 */
253 public static final int TYPEBOUNDKIND = WILDCARD + 1;
254
255 /** metadata: Annotation.
256 */
257 public static final int ANNOTATION = TYPEBOUNDKIND + 1;
258
259 /** metadata: Modifiers
260 */
261 public static final int MODIFIERS = ANNOTATION + 1;
262
263 public static final int ANNOTATED_TYPE = MODIFIERS + 1;
264
265 /** Error trees, of type Erroneous.
1864 }
1865 @Override
1866 public void accept(Visitor v) { v.visitTypeApply(this); }
1867
1868 public Kind getKind() { return Kind.PARAMETERIZED_TYPE; }
1869 public JCTree getType() { return clazz; }
1870 public List<JCExpression> getTypeArguments() {
1871 return arguments;
1872 }
1873 @Override
1874 public <R,D> R accept(TreeVisitor<R,D> v, D d) {
1875 return v.visitParameterizedType(this, d);
1876 }
1877 @Override
1878 public int getTag() {
1879 return TYPEAPPLY;
1880 }
1881 }
1882
1883 /**
1884 * A disjunction type, T1 | T2 | ... Tn (used in multicatch statements)
1885 */
1886 public static class JCTypeDisjunction extends JCExpression implements DisjunctiveTypeTree {
1887
1888 public List<JCExpression> alternatives;
1889
1890 protected JCTypeDisjunction(List<JCExpression> components) {
1891 this.alternatives = components;
1892 }
1893 @Override
1894 public void accept(Visitor v) { v.visitTypeDisjunction(this); }
1895
1896 public Kind getKind() { return Kind.DISJUNCTIVE_TYPE; }
1897
1898 public List<JCExpression> getTypeAlternatives() {
1899 return alternatives;
1900 }
1901 @Override
1902 public <R,D> R accept(TreeVisitor<R,D> v, D d) {
1903 return v.visitDisjunctiveType(this, d);
1904 }
1905 @Override
1906 public int getTag() {
1907 return TYPEDISJUNCTION;
1908 }
1909 }
1910
1911 /**
1912 * A formal class parameter.
1913 * @param name name
1914 * @param bounds bounds
1915 */
1916 public static class JCTypeParameter extends JCTree implements TypeParameterTree {
1917 public Name name;
1918 public List<JCExpression> bounds;
1919 protected JCTypeParameter(Name name, List<JCExpression> bounds) {
1920 this.name = name;
1921 this.bounds = bounds;
1922 }
1923 @Override
1924 public void accept(Visitor v) { v.visitTypeParameter(this); }
1925
1926 public Kind getKind() { return Kind.TYPE_PARAMETER; }
1927 public Name getName() { return name; }
2210 public void visitReturn(JCReturn that) { visitTree(that); }
2211 public void visitThrow(JCThrow that) { visitTree(that); }
2212 public void visitAssert(JCAssert that) { visitTree(that); }
2213 public void visitApply(JCMethodInvocation that) { visitTree(that); }
2214 public void visitNewClass(JCNewClass that) { visitTree(that); }
2215 public void visitNewArray(JCNewArray that) { visitTree(that); }
2216 public void visitParens(JCParens that) { visitTree(that); }
2217 public void visitAssign(JCAssign that) { visitTree(that); }
2218 public void visitAssignop(JCAssignOp that) { visitTree(that); }
2219 public void visitUnary(JCUnary that) { visitTree(that); }
2220 public void visitBinary(JCBinary that) { visitTree(that); }
2221 public void visitTypeCast(JCTypeCast that) { visitTree(that); }
2222 public void visitTypeTest(JCInstanceOf that) { visitTree(that); }
2223 public void visitIndexed(JCArrayAccess that) { visitTree(that); }
2224 public void visitSelect(JCFieldAccess that) { visitTree(that); }
2225 public void visitIdent(JCIdent that) { visitTree(that); }
2226 public void visitLiteral(JCLiteral that) { visitTree(that); }
2227 public void visitTypeIdent(JCPrimitiveTypeTree that) { visitTree(that); }
2228 public void visitTypeArray(JCArrayTypeTree that) { visitTree(that); }
2229 public void visitTypeApply(JCTypeApply that) { visitTree(that); }
2230 public void visitTypeDisjunction(JCTypeDisjunction that) { visitTree(that); }
2231 public void visitTypeParameter(JCTypeParameter that) { visitTree(that); }
2232 public void visitWildcard(JCWildcard that) { visitTree(that); }
2233 public void visitTypeBoundKind(TypeBoundKind that) { visitTree(that); }
2234 public void visitAnnotation(JCAnnotation that) { visitTree(that); }
2235 public void visitModifiers(JCModifiers that) { visitTree(that); }
2236 public void visitErroneous(JCErroneous that) { visitTree(that); }
2237 public void visitLetExpr(LetExpr that) { visitTree(that); }
2238
2239 public void visitTree(JCTree that) { Assert.error(); }
2240 }
2241
2242 }
|
219 /** Simple identifiers, of type Ident.
220 */
221 public static final int IDENT = SELECT + 1;
222
223 /** Literals, of type Literal.
224 */
225 public static final int LITERAL = IDENT + 1;
226
227 /** Basic type identifiers, of type TypeIdent.
228 */
229 public static final int TYPEIDENT = LITERAL + 1;
230
231 /** Array types, of type TypeArray.
232 */
233 public static final int TYPEARRAY = TYPEIDENT + 1;
234
235 /** Parameterized types, of type TypeApply.
236 */
237 public static final int TYPEAPPLY = TYPEARRAY + 1;
238
239 /** Union types, of type TypeUnion
240 */
241 public static final int TYPEUNION = TYPEAPPLY + 1;
242
243 /** Formal type parameters, of type TypeParameter.
244 */
245 public static final int TYPEPARAMETER = TYPEUNION + 1;
246
247 /** Type argument.
248 */
249 public static final int WILDCARD = TYPEPARAMETER + 1;
250
251 /** Bound kind: extends, super, exact, or unbound
252 */
253 public static final int TYPEBOUNDKIND = WILDCARD + 1;
254
255 /** metadata: Annotation.
256 */
257 public static final int ANNOTATION = TYPEBOUNDKIND + 1;
258
259 /** metadata: Modifiers
260 */
261 public static final int MODIFIERS = ANNOTATION + 1;
262
263 public static final int ANNOTATED_TYPE = MODIFIERS + 1;
264
265 /** Error trees, of type Erroneous.
1864 }
1865 @Override
1866 public void accept(Visitor v) { v.visitTypeApply(this); }
1867
1868 public Kind getKind() { return Kind.PARAMETERIZED_TYPE; }
1869 public JCTree getType() { return clazz; }
1870 public List<JCExpression> getTypeArguments() {
1871 return arguments;
1872 }
1873 @Override
1874 public <R,D> R accept(TreeVisitor<R,D> v, D d) {
1875 return v.visitParameterizedType(this, d);
1876 }
1877 @Override
1878 public int getTag() {
1879 return TYPEAPPLY;
1880 }
1881 }
1882
1883 /**
1884 * A union type, T1 | T2 | ... Tn (used in multicatch statements)
1885 */
1886 public static class JCTypeUnion extends JCExpression implements UnionTypeTree {
1887
1888 public List<JCExpression> alternatives;
1889
1890 protected JCTypeUnion(List<JCExpression> components) {
1891 this.alternatives = components;
1892 }
1893 @Override
1894 public void accept(Visitor v) { v.visitTypeUnion(this); }
1895
1896 public Kind getKind() { return Kind.UNION_TYPE; }
1897
1898 public List<JCExpression> getTypeAlternatives() {
1899 return alternatives;
1900 }
1901 @Override
1902 public <R,D> R accept(TreeVisitor<R,D> v, D d) {
1903 return v.visitUnionType(this, d);
1904 }
1905 @Override
1906 public int getTag() {
1907 return TYPEUNION;
1908 }
1909 }
1910
1911 /**
1912 * A formal class parameter.
1913 * @param name name
1914 * @param bounds bounds
1915 */
1916 public static class JCTypeParameter extends JCTree implements TypeParameterTree {
1917 public Name name;
1918 public List<JCExpression> bounds;
1919 protected JCTypeParameter(Name name, List<JCExpression> bounds) {
1920 this.name = name;
1921 this.bounds = bounds;
1922 }
1923 @Override
1924 public void accept(Visitor v) { v.visitTypeParameter(this); }
1925
1926 public Kind getKind() { return Kind.TYPE_PARAMETER; }
1927 public Name getName() { return name; }
2210 public void visitReturn(JCReturn that) { visitTree(that); }
2211 public void visitThrow(JCThrow that) { visitTree(that); }
2212 public void visitAssert(JCAssert that) { visitTree(that); }
2213 public void visitApply(JCMethodInvocation that) { visitTree(that); }
2214 public void visitNewClass(JCNewClass that) { visitTree(that); }
2215 public void visitNewArray(JCNewArray that) { visitTree(that); }
2216 public void visitParens(JCParens that) { visitTree(that); }
2217 public void visitAssign(JCAssign that) { visitTree(that); }
2218 public void visitAssignop(JCAssignOp that) { visitTree(that); }
2219 public void visitUnary(JCUnary that) { visitTree(that); }
2220 public void visitBinary(JCBinary that) { visitTree(that); }
2221 public void visitTypeCast(JCTypeCast that) { visitTree(that); }
2222 public void visitTypeTest(JCInstanceOf that) { visitTree(that); }
2223 public void visitIndexed(JCArrayAccess that) { visitTree(that); }
2224 public void visitSelect(JCFieldAccess that) { visitTree(that); }
2225 public void visitIdent(JCIdent that) { visitTree(that); }
2226 public void visitLiteral(JCLiteral that) { visitTree(that); }
2227 public void visitTypeIdent(JCPrimitiveTypeTree that) { visitTree(that); }
2228 public void visitTypeArray(JCArrayTypeTree that) { visitTree(that); }
2229 public void visitTypeApply(JCTypeApply that) { visitTree(that); }
2230 public void visitTypeUnion(JCTypeUnion that) { visitTree(that); }
2231 public void visitTypeParameter(JCTypeParameter that) { visitTree(that); }
2232 public void visitWildcard(JCWildcard that) { visitTree(that); }
2233 public void visitTypeBoundKind(TypeBoundKind that) { visitTree(that); }
2234 public void visitAnnotation(JCAnnotation that) { visitTree(that); }
2235 public void visitModifiers(JCModifiers that) { visitTree(that); }
2236 public void visitErroneous(JCErroneous that) { visitTree(that); }
2237 public void visitLetExpr(LetExpr that) { visitTree(that); }
2238
2239 public void visitTree(JCTree that) { Assert.error(); }
2240 }
2241
2242 }
|