1 marinov 1.1.2.1 // SetTypeMap.java, created Wed Nov 4 17:03:04 1998 by marinov 2 cananian 1.1.2.3 // Copyright (C) 1998 Darko Marinov <marinov@lcs.mit.edu> 3 cananian 1.1.2.3 // Licensed under the terms of the GNU GPL; see COPYING for details. 4 marinov 1.1.2.1 package harpoon.Analysis.Maps; 5 marinov 1.1.2.1 6 marinov 1.1.2.1 import harpoon.Temp.Temp; 7 marinov 1.1.2.1 import harpoon.Analysis.TypeInference.SetHClass; 8 cananian 1.1.2.2 import harpoon.ClassFile.HCode; 9 marinov 1.1.2.1 /** 10 marinov 1.1.2.1 * <code>SetTypeMap</code> is a mapping from temporaries to their concrete types, 11 cananian 1.1.2.4 * i.e.<!--this comment indicates to javadoc that the preceding period was 12 cananian 1.1.2.4 * not the end of the sentence--> the sets of all exact classes whose 13 cananian 1.1.2.4 * instances the temporary may hold during execution. 14 marinov 1.1.2.1 * (For details see Ole Agesen's PhD Thesis, pp. 4-8.) 15 marinov 1.1.2.1 * 16 marinov 1.1.2.1 * @author Darko Marinov <marinov@lcs.mit.edu> 17 cananian 1.2 * @version $Id: SetTypeMap.java,v 1.2 2002/02/25 20:58:10 cananian Exp $ 18 marinov 1.1.2.1 */ 19 marinov 1.1.2.1 20 marinov 1.1.2.1 public interface SetTypeMap { 21 marinov 1.1.2.1 22 marinov 1.1.2.1 /** Return the concrete type of a given temporary. 23 marinov 1.1.2.1 * @param c The <code>HCode</code> containing <code>t</code>. 24 marinov 1.1.2.1 * @param t The temporary to examine. 25 marinov 1.1.2.1 * @return the concrete type of <code>t</code>. 26 marinov 1.1.2.1 */ 27 marinov 1.1.2.1 public SetHClass setTypeMap(HCode c, Temp t); 28 marinov 1.1.2.1 29 cananian 1.2 }