Home | History | Annotate | Download | only in ast
      1 /*
      2  * Javassist, a Java-bytecode translator toolkit.
      3  * Copyright (C) 1999-2007 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.CompileError;
     19 
     20 /**
     21  * Assignment expression.
     22  */
     23 public class AssignExpr extends Expr {
     24     /* operator must be either of:
     25      * =, %=, &=, *=, +=, -=, /=, ^=, |=, <<=, >>=, >>>=
     26      */
     27 
     28     private AssignExpr(int op, ASTree _head, ASTList _tail) {
     29         super(op, _head, _tail);
     30     }
     31 
     32     public static AssignExpr makeAssign(int op, ASTree oprand1,
     33                                         ASTree oprand2) {
     34         return new AssignExpr(op, oprand1, new ASTList(oprand2));
     35     }
     36 
     37     public void accept(Visitor v) throws CompileError {
     38         v.atAssignExpr(this);
     39     }
     40 }
     41