COSTA: COSt and Termination Analyzer for Java Bytecode
    
    /*
 *  Copyright (C) 2009  E.Albert, P.Arenas, S.Genaim, G.Puebla, and D.Zanardini
 *                      https://costa.ls.fi.upm.es
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
package pubs;
/**
 * This class has a method for in-place reversal of a list
 * implemented as a linked list.
 * 
 * @author E.Albert, P.Arenas, S.Genaim, and G.Puebla
 * 
 */

class ListReverse {
	ListReverse next;
	int  data;
	int length;

	public ListReverse reverse(ListReverse x) {
		ListReverse result = null;
		ListReverse tmp = null;

		while ( x != null ) {
			tmp = x.next;
			x.next = result;
			result = x;
			x = tmp;
		}

		return result;
	}

}