type.h File Reference

Interface for expression types. More...

`#include "cvc4_public.h"`
`#include <string>`
`#include <vector>`
`#include <limits.h>`
`#include <stdint.h>`
`#include "util/cardinality.h"`
`#include "util/subrange_bound.h"`
Include dependency graph for type.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

struct | CVC4::TypeHashFunction
| Hash function for Types. More...
class | CVC4::Type
| Class encapsulating CVC4 expression types. More...
class | CVC4::BooleanType
| Singleton class encapsulating the Boolean type. More...
class | CVC4::IntegerType
| Singleton class encapsulating the integer type. More...
class | CVC4::RealType
| Singleton class encapsulating the real type. More...
class | CVC4::StringType
| Singleton class encapsulating the string type. More...
class | CVC4::FunctionType
| Class encapsulating a function type. More...
class | CVC4::TupleType
| Class encapsulating a tuple type. More...
class | CVC4::RecordType
| Class encapsulating a record type. More...
class | CVC4::SExprType
| Class encapsulating a tuple type. More...
class | CVC4::ArrayType
| Class encapsulating an array type. More...
class | CVC4::SetType
| Class encapsulating an set type. More...
class | CVC4::SortType
| Class encapsulating a user-defined sort. More...
class | CVC4::SortConstructorType
| Class encapsulating a user-defined sort constructor. More...
class | CVC4::SubrangeType
| Class encapsulating an integer subrange type. More...
class | CVC4::BitVectorType
| Class encapsulating the bit-vector type. More...
class | CVC4::DatatypeType
| Class encapsulating the datatype type. More...
class | CVC4::ConstructorType
| Class encapsulating the constructor type. More...
class | CVC4::SelectorType
| Class encapsulating the Selector type. More...
class | CVC4::TesterType
| Class encapsulating the Tester type. More...

## Namespaces

namespace | CVC4
namespace | CVC4::expr

## Functions

std::ostream & | CVC4::operator<< (std::ostream &out, const Type &t)
| Output operator for types.
TypeNode | CVC4::expr::exportTypeInternal (TypeNode n, NodeManager *from, NodeManager *nm, ExprManagerMapCollection &vmap)

## Detailed Description

Interface for expression types.

    ** Original author: Christopher L. Conway
    ** Major contributors: Dejan Jovanovic, Morgan Deters
    ** Minor contributors (to current version): Andrew Reynolds, Kshitij Bansal
    ** This file is part of the CVC4 project.
    ** Copyright (c) 2009-2014  New York University and The University of Iowa
    ** See the file COPYING in the top-level source directory for licensing
    ** information.

Interface for expression types

Definition in file type.h.