/*******************************************************************************
 * Copyright (c) 2013 E.D.Willink and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v2.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v20.html
 *
 * Contributors:
 *     E.D.Willink - initial API and implementation
 *******************************************************************************/
package org.eclipse.qvto.examples.xtext.imperativeocl.ui;

import org.eclipse.ocl.xtext.essentialocl.ui.EssentialOCLEditor;
import org.eclipse.qvto.examples.xtext.imperativeocl.ui.internal.ImperativeOCLActivator;

public class ImperativeOCLEditor extends EssentialOCLEditor
{
	public static final String EDITOR_ID = ImperativeOCLActivator.ORG_ECLIPSE_QVTO_EXAMPLES_XTEXT_IMPERATIVEOCL_IMPERATIVEOCL;

	public ImperativeOCLEditor() {
		super();
	}
}