cprover
string_instrumentation.cpp File Reference

String Abstraction. More...

#include "string_instrumentation.h"
#include <algorithm>
#include <util/arith_tools.h>
#include <util/c_types.h>
#include <util/config.h>
#include <util/message.h>
#include <util/std_expr.h>
#include <util/std_code.h>
#include <util/symbol_table.h>
#include <goto-programs/format_strings.h>
#include <goto-programs/goto_model.h>
#include <goto-programs/remove_skip.h>
Include dependency graph for string_instrumentation.cpp:

Go to the source code of this file.

Classes

class  string_instrumentationt
 

Functions

exprt is_zero_string (const exprt &what, bool write)
 
exprt zero_string_length (const exprt &what, bool write)
 
exprt buffer_size (const exprt &what)
 
void string_instrumentation (symbol_tablet &symbol_table, message_handlert &message_handler, goto_programt &dest)
 
void string_instrumentation (symbol_tablet &symbol_table, message_handlert &message_handler, goto_functionst &dest)
 
void string_instrumentation (goto_modelt &goto_model, message_handlert &message_handler)
 

Detailed Description

String Abstraction.

Definition in file string_instrumentation.cpp.

Function Documentation

◆ buffer_size()

◆ is_zero_string()

◆ string_instrumentation() [1/3]

void string_instrumentation ( symbol_tablet symbol_table,
message_handlert message_handler,
goto_programt dest 
)

◆ string_instrumentation() [2/3]

void string_instrumentation ( symbol_tablet symbol_table,
message_handlert message_handler,
goto_functionst dest 
)

Definition at line 166 of file string_instrumentation.cpp.

References message_handler, and string_instrumentation().

◆ string_instrumentation() [3/3]

void string_instrumentation ( goto_modelt goto_model,
message_handlert message_handler 
)

◆ zero_string_length()

exprt zero_string_length ( const exprt what,
bool  write 
)

Definition at line 38 of file string_instrumentation.cpp.

References exprt::copy_to_operands(), irept::set(), and size_type().