/***************************************************************************************************
 * Copyright (c) 2003, 2004 IBM Corporation and others. All rights reserved. This program and the
 * accompanying materials are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors: IBM Corporation - initial API and implementation
 **************************************************************************************************/
package org.eclipse.wst.common.internal.emf.utilities;


public class Revisit {

	/**
	 * Revisit constructor comment.
	 */
	public Revisit() {
		super();
	}

	public static void revisit() {
	}


	public static void unComment() {
	}

	public static void toDo() {
	}

	public static void refactor() {
	}

	public static void removeDeprecatedMethod() {
	}

	public static void deleteMe() {
	}

	public static void reviewDesign() {
	}
}

