package edu.cmu.cs.l3.absyn;

import java.util.*;
import edu.cmu.cs.l3.symbol.*;

public class ASDeclarationProc extends ASDeclaration {

    public ASDeclarationProc(int p, ASType rettype, Symbol name, List params, ASBlock body) {
	super(p); m_rettype = rettype; m_name = name; m_params = params; m_body = body;

	m_classname = "ASDeclarationProc";
    }

    public ASType getReturnType() {
	return m_rettype;
    }

    public Symbol getName() {
	return m_name;
    }


    public List getParams() {
	return m_params;
    }

    public ASBlock getBody() {
	return m_body;
    }

    public boolean isProcedure() {
	return (m_rettype == null);
    }

    public void setName(Symbol name) {
        m_name = name;
    }

    private ASType m_rettype;
    private Symbol m_name;
    private List m_params;
    private ASBlock m_body;
}