1 /* ========================================== 2 * JGraphT : a free Java graph-theory library 3 * ========================================== 4 * 5 * Project Info: http://jgrapht.sourceforge.net/ 6 * Project Creator: Barak Naveh (http://sourceforge.net/users/barak_naveh) 7 * 8 * (C) Copyright 2003-2006, by Barak Naveh and Contributors. 9 * 10 * This library is free software; you can redistribute it and/or modify it 11 * under the terms of the GNU Lesser General Public License as published by 12 * the Free Software Foundation; either version 2.1 of the License, or 13 * (at your option) any later version. 14 * 15 * This library is distributed in the hope that it will be useful, but 16 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 17 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 18 * License for more details. 19 * 20 * You should have received a copy of the GNU Lesser General Public License 21 * along with this library; if not, write to the Free Software Foundation, 22 * Inc., 23 * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 24 */ 25 /* ----------------- 26 * TypeUtil.java 27 * ----------------- 28 * (C) Copyright 2006-2006, by John V. Sichi and Contributors. 29 * 30 * Original Author: John V. Sichi 31 * Contributor(s): - 32 * 33 * $Id: TypeUtil.java 504 2006-07-03 02:37:26Z perfecthash $ 34 * 35 * Changes 36 * ------- 37 * 07-May-2006 : Initial version (JVS); 38 */ 39 package org.jgrapht.util; 40 41 /** 42 * TypeUtil isolates type-unsafety so that code that which uses it for 43 * legitimate reasons can stay warning-free. 44 * 45 * @author John V. Sichi 46 */ 47 public class TypeUtil<T> 48 { 49 50 //~ Methods --------------------------------------------------------------- 51 52 /** 53 * Casts an object to a type. 54 * 55 * @param o object to be cast 56 * @param typeDecl conveys the target type information; the actual value is 57 * unused and can be null since this is all just stupid 58 * compiler tricks 59 * 60 * @return the result of the cast 61 */ 62 @SuppressWarnings("unchecked") 63 public static <T> T uncheckedCast(Object o, TypeUtil<T> typeDecl) 64 { 65 return (T) o; 66 } 67 } 68 69 // End TypeUtil.java 70