/*******************************************************************************
 *	Type.cc	C Type Object
 *			T.Barnaby,	BEAM Ltd,	15/3/91
 *******************************************************************************
 */

#include <stdio.h>
#include <Type.h>

Type::Type(BString typeName, Node* node, Type* derived){
	otypeName = typeName;
	onode = node;
	oderived = derived;
}

Type::~Type(){
}

void	Type::print(){
	BIter	i;
	
	printf("Type: Name(%s) (", otypeName.retStr());
#ifdef ZAP
	for(ovars.start(i); !ovars.isEnd(i); ovars.next(i)){
		printf("%s ", ovars[i].name().retStr());
	}
#endif
	printf(")\n");
}

BString	Type::name(){
	return otypeName;
}

Node* Type::node(){
	return onode;
}

Type* Type::derived(){
	return oderived;
}
