ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
destructor.cpp File Reference
Include dependency graph for destructor.cpp:

Functions

const struct_typet * resolve_class_type (const namespacet &ns, const typet &type)
 Follows type to the authoritative class type symbol, or nullptr when it does not resolve to a struct.
const struct_typet::componentt * get_destructor_component (const namespacet &ns, const struct_typet &struct_type)
 The destructor method component of struct_type, or nullptr when it has none.
bool get_destructor (const namespacet &ns, const typet &type, code_function_callt &destructor)

Function Documentation

◆ get_destructor()

bool get_destructor ( const namespacet & ns,
const typet & type,
code_function_callt & destructor )

◆ get_destructor_component()

const struct_typet::componentt * get_destructor_component ( const namespacet & ns,
const struct_typet & struct_type )

The destructor method component of struct_type, or nullptr when it has none.

The result points into struct_type and shares its lifetime.

◆ resolve_class_type()

const struct_typet * resolve_class_type ( const namespacet & ns,
const typet & type )

Follows type to the authoritative class type symbol, or nullptr when it does not resolve to a struct.

The result points either into the symbol table or, for a tag that is not bound, into type itself, so it stays valid only as long as both do: callers must not pass a temporary, nor erase symbols before using it.