CBMC
validate_types.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Validate types
4 
5 Author: Daniel Poetzl
6 
7 \*******************************************************************/
8 
9 #ifndef CPROVER_UTIL_VALIDATE_TYPES_H
10 #define CPROVER_UTIL_VALIDATE_TYPES_H
11 
12 class typet;
13 class namespacet;
14 enum class validation_modet;
15 
16 void check_type(const typet &type, const validation_modet vm);
17 
18 void validate_type(
19  const typet &type,
20  const namespacet &ns,
21  const validation_modet vm);
22 
24  const typet &type,
25  const namespacet &ns,
26  const validation_modet vm);
27 
28 #endif /* CPROVER_UTIL_VALIDATE_TYPES_H */
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition: namespace.h:94
The type of an expression, extends irept.
Definition: type.h:29
void check_type(const typet &type, const validation_modet vm)
Check that the given type is well-formed (shallow checks only, i.e., subtypes are not checked)
void validate_type(const typet &type, const namespacet &ns, const validation_modet vm)
Check that the given type is well-formed, assuming that its subtypes have already been checked for we...
void validate_full_type(const typet &type, const namespacet &ns, const validation_modet vm)
Check that the given type is well-formed (full check, including checks of subtypes)
validation_modet