Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

LogicalNotExpr.java

00001 package edu.ksu.cis.bandera.jext;
00002 
00003 import ca.mcgill.sable.soot.*;
00004 import ca.mcgill.sable.soot.grimp.*;
00005 import ca.mcgill.sable.soot.jimple.*;
00006 import ca.mcgill.sable.util.*;
00007 /**
00008  * Extending jimple/grimp with Logical Not operation
00009  * Creation date: (4/15/01 2:38:58 AM)
00010  * @author: Roby Joehanes
00011  */
00012 public class LogicalNotExpr implements Expr {
00013     private ValueBox op;
00014 public LogicalNotExpr(Value v) { this(Grimp.v().newArgBox(v)); }
00015 public LogicalNotExpr(ValueBox v) { op = v; }
00016 /**
00017  * apply method comment.
00018  */
00019 public void apply(Switch sw)
00020 {
00021     ((PAExprSwitch) sw).caseLogicalNotExpr(this);
00022 }
00023 public String getSymbol() { return "!"; }
00024 /**
00025  * getType method comment.
00026  */
00027 public Type getType() {
00028     return BooleanType.v();
00029 }
00030 /**
00031  * getUseBoxes method comment.
00032  */
00033 public List getUseBoxes() {
00034     ca.mcgill.sable.util.List list = new ca.mcgill.sable.util.ArrayList();
00035     list.addAll(op.getValue().getUseBoxes());
00036     list.add(op);
00037     return list;
00038 }
00039 /**
00040  * toBriefString method comment.
00041  */
00042 public String toBriefString() {
00043     return getSymbol() + ((ToBriefString)op).toBriefString();
00044 }
00045 public String toString()
00046 {
00047     return getSymbol() + op.toString();
00048 }
00049 }

Generated at Thu Feb 7 06:50:00 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001