/* SCCS - @(#)ExprsNode.java 1.2 - 02/28/99 - 12:39:10 */ /* * Copyright (c) 1997 USC Brain Project. email nsl@java.usc.edu. */ // // ExprsNode //////////////////////////////////////////////////////////// /** * ExprsNode - General expression statement List */ package npp.src.util; import java.lang.String; import java.util.Vector; import pp.src.jbf.*; public class ExprsNode extends YYtoken{ /** Unary Expression node construction */ public ExprsNode(YYtoken t) { super(YYtokentypes.nt_expression, t.text, t.lineno, t.charno, t.charno0); list = new Vector(); list.addElement(t); processed = false; code0=t.text; } public void addHead(YYtoken t) { list.insertElementAt(t, 0); code0=t.text+","+code0; } public void addTail(YYtoken t) { list.addElement(t); code0=code0+","+t.text; } public void remove() { list.removeAllElements(); code0=""; } public int size() { return list.size(); } /** * Code generation. * Generate all expressions in the list * @param npp Nsl Preprocessor * @return error value */ public int genCode(NslPreProcessor npp) { java.util.Enumeration E = list.elements(); ExprNode expr; //System.out.println("in genCode for ExprsNode***"); while(E.hasMoreElements()) { expr = (ExprNode)E.nextElement(); expr.genCode(npp); if(expr.processed) processed = true; } return NO_OP; } public final static int NO_OP = 0; public Vector list; public String code; public boolean processed; public String code0=""; }