cvc4-1.4
|
Class encapsulating the Tester type. More...
#include <type.h>
Public Member Functions | |
TesterType (const Type &type=Type()) throw (IllegalArgumentException) | |
Construct from the base type. More... | |
DatatypeType | getDomain () const |
Get the type that this tester tests (the datatype type) More... | |
BooleanType | getRangeType () const |
Get the range type for this tester (included for sake of interface completeness), but doesn't give useful information). More... | |
bool | isNull () const |
Check whether this is a null type. More... | |
Cardinality | getCardinality () const |
Return the cardinality of this type. More... | |
bool | isWellFounded () const |
Is this a well-founded type? More... | |
Expr | mkGroundTerm () const |
Construct and return a ground term for this Type. More... | |
bool | isSubtypeOf (Type t) const |
Is this type a subtype of the given type? More... | |
bool | isComparableTo (Type t) const |
Is this type comparable to the given type (i.e., do they share a common ancestor in the subtype tree)? More... | |
Type | getBaseType () const |
Get the most general base type of this type. More... | |
Type | substitute (const Type &type, const Type &replacement) const |
Substitution of Types. More... | |
Type | substitute (const std::vector< Type > &types, const std::vector< Type > &replacements) const |
Simultaneous substitution of Types. More... | |
ExprManager * | getExprManager () const |
Get this type's ExprManager. More... | |
Type | exportTo (ExprManager *exprManager, ExprManagerMapCollection &vmap) const |
Exports this type into a different ExprManager. More... | |
bool | operator== (const Type &t) const |
Comparison for structural equality. More... | |
bool | operator!= (const Type &t) const |
Comparison for structural disequality. More... | |
bool | operator< (const Type &t) const |
An ordering on Types so they can be stored in maps, etc. More... | |
bool | operator<= (const Type &t) const |
An ordering on Types so they can be stored in maps, etc. More... | |
bool | operator> (const Type &t) const |
An ordering on Types so they can be stored in maps, etc. More... | |
bool | operator>= (const Type &t) const |
An ordering on Types so they can be stored in maps, etc. More... | |
bool | isBoolean () const |
Is this the Boolean type? More... | |
bool | isInteger () const |
Is this the integer type? More... | |
bool | isReal () const |
Is this the real type? More... | |
bool | isString () const |
Is this the string type? More... | |
bool | isBitVector () const |
Is this the bit-vector type? More... | |
bool | isFunction () const |
Is this a function type? More... | |
bool | isPredicate () const |
Is this a predicate type, i.e. More... | |
bool | isTuple () const |
Is this a tuple type? More... | |
bool | isRecord () const |
Is this a record type? More... | |
bool | isSExpr () const |
Is this a symbolic expression type? More... | |
bool | isArray () const |
Is this an array type? More... | |
bool | isSet () const |
Is this a Set type? More... | |
bool | isDatatype () const |
Is this a datatype type? More... | |
bool | isConstructor () const |
Is this a constructor type? More... | |
bool | isSelector () const |
Is this a selector type? More... | |
bool | isTester () const |
Is this a tester type? More... | |
bool | isSort () const |
Is this a sort kind? More... | |
bool | isSortConstructor () const |
Is this a sort constructor kind? More... | |
bool | isSubrange () const |
Is this a predicate subtype? More... | |
void | toStream (std::ostream &out) const |
Outputs a string representation of this type to the stream. More... | |
std::string | toString () const |
Constructs a string representation of this type. More... | |
Protected Member Functions | |
Type | makeType (const TypeNode &typeNode) const |
Construct a new type given the typeNode, for internal use only. More... | |
Static Protected Member Functions | |
static TypeNode * | getTypeNode (const Type &t) throw () |
Accessor for derived classes. More... | |
Protected Attributes | |
TypeNode * | d_typeNode |
The internal expression representation. More... | |
NodeManager * | d_nodeManager |
The responsible expression manager. More... | |
CVC4::TesterType::TesterType | ( | const Type & | type = Type() | ) | |
throw | ( | IllegalArgumentException | |||
) |
Construct from the base type.
|
inherited |
Exports this type into a different ExprManager.
Referenced by CVC4::Command::ExportTransformer::operator()().
|
inherited |
Get the most general base type of this type.
|
inherited |
Return the cardinality of this type.
DatatypeType CVC4::TesterType::getDomain | ( | ) | const |
Get the type that this tester tests (the datatype type)
|
inherited |
Get this type's ExprManager.
BooleanType CVC4::TesterType::getRangeType | ( | ) | const |
Get the range type for this tester (included for sake of interface completeness), but doesn't give useful information).
Accessor for derived classes.
Definition at line 121 of file type.h.
References CVC4::Type::d_typeNode, CVC4::operator!=(), and CVC4::operator==().
|
inherited |
Is this an array type?
|
inherited |
Is this the bit-vector type?
|
inherited |
Is this the Boolean type?
|
inherited |
Is this type comparable to the given type (i.e., do they share a common ancestor in the subtype tree)?
|
inherited |
Is this a constructor type?
|
inherited |
Is this a datatype type?
|
inherited |
Is this a function type?
|
inherited |
Is this the integer type?
|
inherited |
Check whether this is a null type.
|
inherited |
Is this a predicate type, i.e.
if it's a function type mapping to Boolean. All predicate types are also function types.
|
inherited |
Is this the real type?
|
inherited |
Is this a record type?
|
inherited |
Is this a selector type?
|
inherited |
Is this a Set type?
|
inherited |
Is this a symbolic expression type?
|
inherited |
Is this a sort kind?
|
inherited |
Is this a sort constructor kind?
|
inherited |
Is this the string type?
|
inherited |
Is this a predicate subtype?
|
inherited |
Is this type a subtype of the given type?
|
inherited |
Is this a tester type?
|
inherited |
Is this a tuple type?
|
inherited |
Is this a well-founded type?
Construct a new type given the typeNode, for internal use only.
typeNode | the TypeNode to use |
|
inherited |
Construct and return a ground term for this Type.
Throws an exception if this type is not well-founded.
|
inherited |
Comparison for structural disequality.
t | the type to compare to |
|
inherited |
An ordering on Types so they can be stored in maps, etc.
|
inherited |
An ordering on Types so they can be stored in maps, etc.
|
inherited |
Comparison for structural equality.
t | the type to compare to |
|
inherited |
An ordering on Types so they can be stored in maps, etc.
|
inherited |
An ordering on Types so they can be stored in maps, etc.
Substitution of Types.
|
inherited |
Simultaneous substitution of Types.
|
inherited |
Outputs a string representation of this type to the stream.
out | the stream to output to |
|
inherited |
Constructs a string representation of this type.
|
protectedinherited |
|
protectedinherited |
The internal expression representation.
Definition at line 101 of file type.h.
Referenced by CVC4::Type::getTypeNode().