AnyExpression.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;
import edu.udel.cis.vsl.tass.model.IF.expression.LHSExpressionIF;
import edu.udel.cis.vsl.tass.model.IF.type.TypeIF.TypeKind;

public class AnyExpression extends UnaryExpression {

	public AnyExpression(ModelFactoryIF factory, LHSExpressionIF expression)
			throws SyntaxException {
		super(factory, ExpressionKind.ANY, (Expression) expression);
		if (expression.type().kind() != TypeKind.INTEGER) {
			throw new SyntaxException(expression,
					"expected integer type for argument of any");
		}
		type = factory.integerType();
	}

	public String toString() {
		return "any(" + expression + ")";
	}

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