All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.internal.xpand2.debug.IfSpecial Maven / Gradle / Ivy

There is a newer version: 2.10.0
Show newest version
/*******************************************************************************
 * Copyright (c) 2005 - 2007 committers of openArchitectureWare 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:
 *     committers of openArchitectureWare - initial API and implementation
 *******************************************************************************/
package org.eclipse.internal.xpand2.debug;

import org.eclipse.internal.xpand2.ast.IfStatement;
import org.eclipse.internal.xtend.expression.ast.ISyntaxElement;
import org.eclipse.internal.xtend.expression.debug.BaseSpecialTreatment;
import org.eclipse.xtend.expression.ExecutionContext;

/**
 * Adapter to handle IF statement special stuff.
 * 
 * @author Clemens Kadura (zAJKa)
 */
public class IfSpecial extends BaseSpecialTreatment {
	
	@Override
	public int getElementNameLength(ISyntaxElement se) {
		if (se instanceof IfStatement)
			return adaptElementName(se, null).length();
		return -1;
	}

	@Override
	public String adaptElementName(ISyntaxElement se, ExecutionContext context) {
		if (se instanceof IfStatement) {
			IfStatement iff = (IfStatement) se;
			return (iff.isElseIf() ? "ELSEIF" : (iff.isElse() ? "ELSE" : "IF"));
		}
		return "";
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy