carl  24.04
Computer ARithmetic Library
typetraits.h
Go to the documentation of this file.
1 /**
2  * @file adaption_gmpxx/typetraits.h
3  * @ingroup typetraits
4  * @ingroup gmpxx
5  * @author Sebastian Junges
6  * @author Gereon Kremer
7  *
8  */
9 
10 #pragma once
11 
12 #ifndef INCLUDED_FROM_NUMBERS_H
13 static_assert(false, "This file may only be included indirectly by numbers.h");
14 #endif
15 
16 #include "../typetraits.h"
17 #include "include.h"
18 
19 namespace carl {
20 
21 TRAIT_TRUE(is_integer_type, mpz_class, gmpxx);
22 TRAIT_TRUE(is_rational_type, mpq_class, gmpxx);
23 
24 TRAIT_TYPE(IntegralType, mpq_class, mpz_class, gmpxx);
25 TRAIT_TYPE(IntegralType, mpz_class, mpz_class, gmpxx);
26 
27 }
States if a type is an integer type.
Definition: typetraits.h:203
carl is the main namespace for the library.
States if a type is a rational type.
Definition: typetraits.h:269
Gives the corresponding integral type.
Definition: typetraits.h:310
#define TRAIT_TRUE(name, type, groups)
Definition: typetraits.h:82
#define TRAIT_TYPE(name, _type, value, groups)
Definition: typetraits.h:90