ExitStatementPair.java

package edu.udel.cis.vsl.tass.ast2model.impl;

import java.io.PrintWriter;

import edu.udel.cis.vsl.tass.ast2model.IF.ExitStatementPairIF;
import edu.udel.cis.vsl.tass.model.IF.FunctionIF;
import edu.udel.cis.vsl.tass.model.IF.ModelIF;
import edu.udel.cis.vsl.tass.model.IF.ProcessIF;
import edu.udel.cis.vsl.tass.model.IF.expression.ExpressionIF;
import edu.udel.cis.vsl.tass.model.IF.location.LocationIF;
import edu.udel.cis.vsl.tass.model.IF.statement.StatementIF;
import edu.udel.cis.vsl.tass.util.Source;

public class ExitStatementPair implements ExitStatementPairIF {

	StatementIF trueBranchExit;
	StatementIF falseBranchExit;
	
	public ExitStatementPair(StatementIF trueBranchExit, StatementIF falseBranchExit) {
		this.trueBranchExit = trueBranchExit;
		this.falseBranchExit = falseBranchExit;
	}

	@Override
	public StatementIF trueBranchExit() {
		return trueBranchExit;
	}

	@Override
	public StatementIF falseBranchExit() {
		return falseBranchExit;
	}

	@Override
	public void setTrueBranchExit(StatementIF trueBranchExit) {
		this.trueBranchExit = trueBranchExit;
	}

	@Override
	public void setFalseBranchExit(StatementIF falseBranchExit) {
		this.falseBranchExit = falseBranchExit;
	}

	@Override
	public StatementKind kind() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public FunctionIF function() {
		return trueBranchExit.function();
	}

	@Override
	public ProcessIF process() {
		return trueBranchExit.process();
	}

	@Override
	public ModelIF model() {
		return trueBranchExit.model();
	}

	@Override
	public LocationIF sourceLocation() {
		return trueBranchExit.sourceLocation();
	}

	@Override
	public LocationIF targetLocation() {
		return trueBranchExit.targetLocation();
	}

	@Override
	public ExpressionIF guard() {
		return null;
	}

	@Override
	public StatementIF next() {
		return trueBranchExit.next();
	}

	@Override
	public boolean isLocal() {
		return false;
	}

	@Override
	public void print(PrintWriter out) {
		trueBranchExit.print(out);
		if (falseBranchExit != null) {
			falseBranchExit.print(out);
		}		
	}

	@Override
	public Source getSource() {
		return trueBranchExit.getSource();
	}

	@Override
	public void setSource(Source source) {
		// TODO Auto-generated method stub
		
	}

}