1 cananian 1.1.2.1 // ArrayFactory.java, created Sat Nov 28 01:43:53 1998 by cananian 2 cananian 1.1.2.4 // Copyright (C) 1998 C. Scott Ananian <cananian@alumni.princeton.edu> 3 cananian 1.1.2.4 // Licensed under the terms of the GNU GPL; see COPYING for details. 4 cananian 1.1.2.1 package harpoon.Util; 5 cananian 1.1.2.1 6 cananian 1.1.2.1 /** 7 cananian 1.1.2.1 * The <code>ArrayFactory</code> interface allows you to make 8 cananian 1.1.2.1 * arrays of objects without run-time type information to determine 9 cananian 1.1.2.1 * the object's type. 10 cananian 1.1.2.1 * 11 cananian 1.1.2.1 * @author C. Scott Ananian <cananian@alumni.princeton.edu> 12 cananian 1.3 * @version $Id: ArrayFactory.java,v 1.3 2002/04/10 03:07:03 cananian Exp $ 13 cananian 1.1.2.1 */ 14 cananian 1.1.2.1 15 cananian 1.2.2.1 public interface ArrayFactory<E> { 16 cananian 1.1.2.3 /** Create and return a new array of the specified length. 17 cananian 1.1.2.3 * The type is determined by the specific <code>ArrayFactory</code> 18 cananian 1.1.2.3 * that you are using. 19 cananian 1.1.2.3 * @see harpoon.Temp.Temp#arrayFactory 20 cananian 1.1.2.3 * @see harpoon.Temp.Temp#doubleArrayFactory 21 cananian 1.1.2.3 * @see harpoon.IR.Quads.Quad#arrayFactory 22 cananian 1.1.2.3 * @see harpoon.ClassFile.HCode#elementArrayFactory 23 cananian 1.1.2.3 */ 24 cananian 1.2.2.1 public E[] newArray(int len); 25 cananian 1.2 }