/Users/lyon/j4p/src/javassist/compiler/ast/Stmnt.java

1    /* 
2     * Javassist, a Java-bytecode translator toolkit. 
3     * Copyright (C) 1999-2003 Shigeru Chiba. All Rights Reserved. 
4     * 
5     * The contents of this file are subject to the Mozilla Public License Version 
6     * 1.1 (the "License"); you may not use this file except in compliance with 
7     * the License.  Alternatively, the contents of this file may be used under 
8     * the terms of the GNU Lesser General Public License Version 2.1 or later. 
9     * 
10    * Software distributed under the License is distributed on an "AS IS" basis, 
11    * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 
12    * for the specific language governing rights and limitations under the 
13    * License. 
14    */ 
15    
16   package javassist.compiler.ast; 
17    
18   import javassist.compiler.TokenId; 
19   import javassist.compiler.CompileError; 
20    
21   /** 
22    * Statement. 
23    */ 
24   public class Stmnt extends ASTList implements TokenId { 
25       protected int operatorId; 
26    
27       public Stmnt(int op, ASTree _head, ASTList _tail) { 
28           super(_head, _tail); 
29           operatorId = op; 
30       } 
31    
32       public Stmnt(int op, ASTree _head) { 
33           super(_head); 
34           operatorId = op; 
35       } 
36    
37       public Stmnt(int op) { 
38           this(op, null); 
39       } 
40    
41       public static Stmnt make(int op, ASTree oprand1, ASTree oprand2) { 
42           return new Stmnt(op, oprand1, new ASTList(oprand2)); 
43       } 
44    
45       public static Stmnt make(int op, ASTree op1, ASTree op2, ASTree op3) { 
46           return new Stmnt(op, op1, new ASTList(op2, new ASTList(op3))); 
47       } 
48    
49       public void accept(Visitor v) throws CompileError { 
50           v.atStmnt(this); 
51       } 
52    
53       public int getOperator() { 
54           return operatorId; 
55       } 
56    
57       protected String getTag() { 
58           if (operatorId < 128) 
59               return "stmnt:" + (char) operatorId; 
60           else 
61               return "stmnt:" + operatorId; 
62       } 
63   } 
64