AddressOfExpression.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.expression.LHSExpressionIF;

public class AddressOfExpression extends UnaryExpression {

	/**
	 * Possible kinds of expressions argument could be:
	 * 
	 * 1. variable
	 * 
	 * 2. SubscriptExpression
	 * 
	 */
	public AddressOfExpression(ModelFactoryIF factory, LHSExpressionIF argument) {
		super(factory, ExpressionKind.ADDRESS_OF, (Expression) argument);
		type = factory.pointerType(argument.type());
	}

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

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

}