Esempio n. 1
0
TypeNode* TypeNameNode::getActualTypeNode(TemplateArguments* templateArguments)
{
	TypeNode* typeNode = getTypeNode(templateArguments);
	if (typeNode)
	{
		typeNode = typeNode->getActualTypeNode(templateArguments);
	}
	return typeNode;
}
Esempio n. 2
0
File: type.cpp Progetto: jinala/CVC4
SortType SortConstructorType::instantiate(const std::vector<Type>& params) const {
  NodeManagerScope nms(d_nodeManager);
  vector<TypeNode> paramsNodes;
  for(vector<Type>::const_iterator i = params.begin(),
        iend = params.end();
      i != iend;
      ++i) {
    paramsNodes.push_back(*getTypeNode(*i));
  }
  return SortType(makeType(d_nodeManager->mkSort(*d_typeNode, paramsNodes)));
}
Esempio n. 3
0
File: type.cpp Progetto: jinala/CVC4
DatatypeType DatatypeType::instantiate(const std::vector<Type>& params) const {
  NodeManagerScope nms(d_nodeManager);
  TypeNode cons = d_nodeManager->mkTypeConst( getDatatype() );
  vector<TypeNode> paramsNodes;
  paramsNodes.push_back( cons );
  for(vector<Type>::const_iterator i = params.begin(),
        iend = params.end();
      i != iend;
      ++i) {
    paramsNodes.push_back(*getTypeNode(*i));
  }
  return DatatypeType(makeType(d_nodeManager->mkTypeNode(kind::PARAMETRIC_DATATYPE, paramsNodes)));
}