blob: 17690c60a6a603dd2cba9a9b24a56b85cdc599e5 [file] [log] [blame]
package org.eclipse.photran.internal.core.f95parser.symboltable.entries;
import org.eclipse.photran.internal.core.f95parser.Nonterminal;
import org.eclipse.photran.internal.core.f95parser.ParseTreeNode;
import org.eclipse.photran.internal.core.f95parser.Token;
import org.eclipse.photran.internal.core.f95parser.symboltable.SymbolTable;
import org.eclipse.photran.internal.core.f95parser.symboltable.SymbolTableEntry;
import org.eclipse.photran.internal.core.f95parser.symboltable.SymbolTableError;
import org.eclipse.photran.internal.core.f95parser.symboltable.SymbolTableVisitor;
/**
* Symbol table entry for a module
*
* @author joverbey
*/
public class ModuleEntry extends SymbolTableEntry
{
public ModuleEntry(SymbolTable parentTable, Token identifier, ParseTreeNode correspondingParseTreeNode)
{
super(parentTable, identifier, correspondingParseTreeNode);
if (correspondingParseTreeNode != null && correspondingParseTreeNode.getRootNonterminal() != Nonterminal.XMODULE)
throw new SymbolTableError("The ParseTreeNode passed to the ModuleEntry constructor should be an xModule");
}
public String getTypeDescription()
{
return "Module";
}
public void visitEntryUsing(SymbolTableVisitor visitor)
{
visitor.visit(this);
}
}