CBMC
|
Expression Pretty Printing. More...
#include "format_expr.h"
#include "arith_tools.h"
#include "bitvector_expr.h"
#include "byte_operators.h"
#include "expr_util.h"
#include "floatbv_expr.h"
#include "format_type.h"
#include "ieee_float.h"
#include "mathematical_expr.h"
#include "mp_arith.h"
#include "pointer_expr.h"
#include "string_utils.h"
#include <map>
#include <ostream>
Go to the source code of this file.
Classes | |
struct | infix_opt |
class | format_expr_configt |
Functions | |
static bool | bracket_subexpression (const exprt &sub_expr, const exprt &expr) |
We use the precendences that most readers expect (i.e., the ones you learn in primary school), and stay clear of the surprising ones that C has. More... | |
static std::ostream & | format_rec (std::ostream &os, const multi_ary_exprt &src) |
This formats a multi-ary expression, adding parentheses where indicated by bracket_subexpression. More... | |
static std::ostream & | format_rec (std::ostream &os, const binary_exprt &src) |
This formats a binary expression, which we do as for multi-ary expressions. More... | |
static std::ostream & | format_rec (std::ostream &os, const unary_exprt &src) |
This formats a unary expression, adding parentheses very aggressively. More... | |
static std::ostream & | format_rec (std::ostream &os, const ternary_exprt &src) |
This formats a ternary expression. More... | |
static std::ostream & | format_rec (std::ostream &os, const constant_exprt &src) |
This formats a constant. More... | |
std::ostream & | fallback_format_rec (std::ostream &os, const exprt &expr) |
void | add_format_hook (irep_idt id, format_expr_configt::formattert formatter) |
std::ostream & | format_rec (std::ostream &os, const exprt &expr) |
Formats an expression in a generic syntax that is inspired by C/C++/Java, and is meant for debugging. More... | |
Variables | |
const std::map< irep_idt, infix_opt > | infix_map |
format_expr_configt | format_expr_config |
Expression Pretty Printing.
Definition in file format_expr.cpp.
void add_format_hook | ( | irep_idt | id, |
format_expr_configt::formattert | formatter | ||
) |
Definition at line 639 of file format_expr.cpp.
We use the precendences that most readers expect (i.e., the ones you learn in primary school), and stay clear of the surprising ones that C has.
Definition at line 55 of file format_expr.cpp.
std::ostream& fallback_format_rec | ( | std::ostream & | os, |
const exprt & | expr | ||
) |
Definition at line 237 of file format_expr.cpp.
|
static |
This formats a binary expression, which we do as for multi-ary expressions.
Definition at line 135 of file format_expr.cpp.
|
static |
This formats a constant.
Definition at line 172 of file format_expr.cpp.
std::ostream& format_rec | ( | std::ostream & | os, |
const exprt & | expr | ||
) |
Formats an expression in a generic syntax that is inspired by C/C++/Java, and is meant for debugging.
Definition at line 644 of file format_expr.cpp.
|
static |
This formats a multi-ary expression, adding parentheses where indicated by bracket_subexpression.
Definition at line 95 of file format_expr.cpp.
|
static |
This formats a ternary expression.
Definition at line 164 of file format_expr.cpp.
|
static |
This formats a unary expression, adding parentheses very aggressively.
Definition at line 142 of file format_expr.cpp.
format_expr_configt format_expr_config |
Definition at line 637 of file format_expr.cpp.
Definition at line 35 of file format_expr.cpp.