NegativeExpression.java

package edu.udel.cis.vsl.tass.model.impl.expression;

import edu.udel.cis.vsl.tass.model.IF.ModelFactoryIF;
import edu.udel.cis.vsl.tass.model.IF.SyntaxException;

public class NegativeExpression extends UnaryExpression {

	public NegativeExpression(ModelFactoryIF factory, Expression expression)
			throws SyntaxException {
		super(factory, ExpressionKind.NEGATIVE, expression);

		if (!expression.type.isNumeric())
			throw new SyntaxException(expression,
					"negative operator requires array argument");
		type = expression.type();
	}

	public String toString() {
		return "-" + expression.atomString();
	}

	public String atomString() {
		return toString();
	}
}