cprover
|
Structure type, corresponds to C style structs. More...
#include <std_types.h>
Classes | |
class | baset |
Base class or struct that a class or struct inherits from. More... | |
Public Types | |
typedef std::vector< baset > | basest |
![]() | |
typedef std::vector< componentt > | componentst |
![]() | |
using | baset = tree_implementationt |
![]() | |
using | dt = tree_nodet< irept, forward_list_as_mapt< irep_idt, irept >, true > |
using | subt = typename dt::subt |
using | named_subt = typename dt::named_subt |
using | tree_implementationt = sharing_treet |
Used to refer to this class from derived classes. | |
Additional Inherited Members | |
![]() | |
static void | check (const typet &, const validation_modet=validation_modet::INVARIANT) |
Check that the type is well-formed (shallow checks only, i.e., subtypes are not checked) | |
static void | validate (const typet &type, const namespacet &, const validation_modet vm=validation_modet::INVARIANT) |
Check that the type is well-formed, assuming that its subtypes have already been checked for well-formedness. | |
static void | validate_full (const typet &type, const namespacet &ns, const validation_modet vm=validation_modet::INVARIANT) |
Check that the type is well-formed (full check, including checks of subtypes) | |
![]() | |
static bool | is_comment (const irep_idt &name) |
static std::size_t | number_of_non_comments (const named_subt &) |
count the number of named_sub elements that are not comments | |
![]() | |
void | detach () |
![]() | |
static void | remove_ref (dt *old_data) |
static void | nonrecursive_destructor (dt *old_data) |
Does the same as remove_ref, but using an explicit stack instead of recursion. | |
![]() | |
dt * | data |
![]() | |
static dt | empty_d |
Structure type, corresponds to C style structs.
Definition at line 230 of file std_types.h.
typedef std::vector<baset> struct_typet::basest |
Definition at line 259 of file std_types.h.
|
inline |
Definition at line 233 of file std_types.h.
|
inlineexplicit |
Definition at line 237 of file std_types.h.
void struct_typet::add_base | ( | const struct_tag_typet & | base | ) |
Add a base class/struct.
base | Type of case/class struct to be added. |
Definition at line 98 of file std_types.cpp.
|
inline |
Get the collection of base classes/structs.
Definition at line 268 of file std_types.h.
Get the collection of base classes/structs.
Definition at line 262 of file std_types.h.
optionalt< struct_typet::baset > struct_typet::get_base | ( | const irep_idt & | id | ) | const |
Return the base with the given name, if exists.
id | The name of the base we are looking for. |
Definition at line 103 of file std_types.cpp.
Test whether id
is a base class/struct.
id | symbol type name |
id
is a base class/struct. Definition at line 285 of file std_types.h.
|
inline |
A struct may be a class, where members may have access restrictions.
Definition at line 245 of file std_types.h.
bool struct_typet::is_prefix_of | ( | const struct_typet & | other | ) | const |
Returns true if the struct is a prefix of other, i.e., if this struct has n components then the component types and names of this struct must match the first n components of other struct.
other | Struct type to compare with. |
Definition at line 117 of file std_types.cpp.