CBMC
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
expr2c_configurationt Struct Referencefinal

Used for configuring the behaviour of expr2c and type2c. More...

#include <expr2c.h>

+ Collaboration diagram for expr2c_configurationt:

Public Member Functions

 expr2c_configurationt (const bool include_struct_padding_components, const bool print_struct_body_in_type, const bool include_array_size, const std::string &true_string, const std::string &false_string, const bool use_library_macros, const bool print_enum_int_value, const bool expand_typedef)
 

Public Attributes

bool include_struct_padding_components
 When printing struct_typet or struct_exprt, include the artificial padding components introduced to keep the struct aligned.
 
bool print_struct_body_in_type
 When printing a struct_typet, should the components of the struct be printed inline.
 
bool include_array_size
 When printing array_typet, should the size of the array be printed.
 
std::string true_string
 This is the string that will be printed for the true boolean expression.
 
std::string false_string
 This is the string that will be printed for the false boolean expression.
 
bool use_library_macros
 This is the string that will be printed for null pointers.
 
bool print_enum_int_value
 When printing an enum-typed constant, print the integer representation.
 
bool expand_typedef
 Print the expanded type instead of a typedef name, even when a typedef is present.
 

Static Public Attributes

static expr2c_configurationt default_configuration
 This prints a human readable C like syntax that closely mirrors the internals of the GOTO program.
 
static expr2c_configurationt clean_configuration
 This prints compilable C that loses some of the internal details of the GOTO program.
 

Detailed Description

Used for configuring the behaviour of expr2c and type2c.

Definition at line 20 of file expr2c.h.

Constructor & Destructor Documentation

◆ expr2c_configurationt()

expr2c_configurationt::expr2c_configurationt ( const bool  include_struct_padding_components,
const bool  print_struct_body_in_type,
const bool  include_array_size,
const std::string &  true_string,
const std::string &  false_string,
const bool  use_library_macros,
const bool  print_enum_int_value,
const bool  expand_typedef 
)
inline

Definition at line 49 of file expr2c.h.

Member Data Documentation

◆ clean_configuration

expr2c_configurationt expr2c_configurationt::clean_configuration
static
Initial value:
{
false,
false,
false,
"1",
"0",
false,
true,
true
}

This prints compilable C that loses some of the internal details of the GOTO program.

Definition at line 51 of file expr2c.h.

◆ default_configuration

expr2c_configurationt expr2c_configurationt::default_configuration
static
Initial value:
{
true,
true,
true,
"TRUE",
"FALSE",
true,
false,
false
}

This prints a human readable C like syntax that closely mirrors the internals of the GOTO program.

Definition at line 39 of file expr2c.h.

◆ expand_typedef

bool expr2c_configurationt::expand_typedef

Print the expanded type instead of a typedef name, even when a typedef is present.

Definition at line 47 of file expr2c.h.

◆ false_string

std::string expr2c_configurationt::false_string

This is the string that will be printed for the false boolean expression.

Definition at line 37 of file expr2c.h.

◆ include_array_size

bool expr2c_configurationt::include_array_size

When printing array_typet, should the size of the array be printed.

Definition at line 31 of file expr2c.h.

◆ include_struct_padding_components

bool expr2c_configurationt::include_struct_padding_components

When printing struct_typet or struct_exprt, include the artificial padding components introduced to keep the struct aligned.

Definition at line 24 of file expr2c.h.

◆ print_enum_int_value

bool expr2c_configurationt::print_enum_int_value

When printing an enum-typed constant, print the integer representation.

Definition at line 43 of file expr2c.h.

◆ print_struct_body_in_type

bool expr2c_configurationt::print_struct_body_in_type

When printing a struct_typet, should the components of the struct be printed inline.

Definition at line 28 of file expr2c.h.

◆ true_string

std::string expr2c_configurationt::true_string

This is the string that will be printed for the true boolean expression.

Definition at line 34 of file expr2c.h.

◆ use_library_macros

bool expr2c_configurationt::use_library_macros

This is the string that will be printed for null pointers.

Definition at line 40 of file expr2c.h.


The documentation for this struct was generated from the following files: