CBMC
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
validate_types.h
Go to the documentation of this file.
1/*******************************************************************\
2
3Module: Validate types
4
5Author: Daniel Poetzl
6
7\*******************************************************************/
8
9#ifndef CPROVER_UTIL_VALIDATE_TYPES_H
10#define CPROVER_UTIL_VALIDATE_TYPES_H
11
12class typet;
13class namespacet;
14enum class validation_modet;
15
16void check_type(const typet &type, const validation_modet vm);
17
18void 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:91
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