CBMC
c_wrangler.cpp File Reference

C Wrangler. More...

#include "c_wrangler.h"
#include <util/cprover_prefix.h>
#include <util/exception_utils.h>
#include <util/json.h>
#include <util/run.h>
#include <util/string_utils.h>
#include "c_defines.h"
#include "ctokenit.h"
#include "mini_c_parser.h"
#include <fstream>
#include <iostream>
#include <list>
#include <map>
#include <regex>
#include <sstream>
+ Include dependency graph for c_wrangler.cpp:

Go to the source code of this file.

Classes

struct  c_wranglert
 
struct  c_wranglert::function_contract_clauset
 
struct  c_wranglert::loop_contract_clauset
 
struct  c_wranglert::assertiont
 
struct  c_wranglert::functiont
 
struct  c_wranglert::objectt
 

Functions

static std::string preprocess (const std::string &source_file, const c_wranglert &c_wrangler)
 
static c_definest get_defines (const std::string &source_file, const c_wranglert &config)
 
static void mangle_function (const c_declarationt &declaration, const c_definest &defines, const c_wranglert::functiont &function_config, std::ostream &out)
 
static void mangle_object (const c_declarationt &declaration, const c_definest &defines, const c_wranglert::objectt &object_config, std::ostream &out)
 
static void mangle (const c_declarationt &declaration, const c_definest &defines, const c_wranglert &config, std::ostream &out)
 
static std::string mangle (const std::string &in, const c_definest &defines, const c_wranglert &config)
 
void c_wrangler (const jsont &config)
 

Detailed Description

C Wrangler.

Definition in file c_wrangler.cpp.

Function Documentation

◆ c_wrangler()

void c_wrangler ( const jsont config)

Definition at line 596 of file c_wrangler.cpp.

◆ get_defines()

static c_definest get_defines ( const std::string &  source_file,
const c_wranglert config 
)
static

Definition at line 344 of file c_wrangler.cpp.

◆ mangle() [1/2]

static void mangle ( const c_declarationt declaration,
const c_definest defines,
const c_wranglert config,
std::ostream &  out 
)
static

Definition at line 542 of file c_wrangler.cpp.

◆ mangle() [2/2]

static std::string mangle ( const std::string &  in,
const c_definest defines,
const c_wranglert config 
)
static

Definition at line 580 of file c_wrangler.cpp.

◆ mangle_function()

static void mangle_function ( const c_declarationt declaration,
const c_definest defines,
const c_wranglert::functiont function_config,
std::ostream &  out 
)
static

Definition at line 365 of file c_wrangler.cpp.

◆ mangle_object()

static void mangle_object ( const c_declarationt declaration,
const c_definest defines,
const c_wranglert::objectt object_config,
std::ostream &  out 
)
static

Definition at line 509 of file c_wrangler.cpp.

◆ preprocess()

static std::string preprocess ( const std::string &  source_file,
const c_wranglert c_wrangler 
)
static

Definition at line 321 of file c_wrangler.cpp.