ESBMC
Efficient SMT-based Context-Bounded Model Checker
Loading...
Searching...
No Matches
math_guard_utils.h
Go to the documentation of this file.
1#pragma once
2
3#include <nlohmann/json.hpp>
4
5#include <string>
6#include <unordered_set>
7
9class type_handler;
10class exprt;
11
12namespace math_guard_utils
13{
14const std::unordered_set<std::string> &math_wrapper_function_names();
15
16const std::unordered_set<std::string> &math_module_function_names();
17
18const std::unordered_set<std::string> &math_guard_real_general_functions();
19
20const std::unordered_set<std::string> &math_guard_int_general_functions();
21
22const std::unordered_set<std::string> &
24
26 const nlohmann::json &arg_json,
27 const python_converter &converter,
28 const type_handler &type_handler,
29 const std::string &current_function);
30
32 const nlohmann::json &call,
33 const python_converter &converter,
34 const type_handler &type_handler,
35 const std::string &current_function);
36
38 const nlohmann::json &call,
39 python_converter &converter,
40 exprt &throw_expr);
41} // namespace math_guard_utils
Definition expr.h:34
Main converter for transforming Python AST into ESBMC's intermediate representation.
Definition python_converter.h:76
Definition type_handler.h:113
Definition math_guard_utils.cpp:147
bool json_arg_contains_or_is_complex(const nlohmann::json &arg_json, const python_converter &converter, const type_handler &type_handler, const std::string &current_function)
Definition math_guard_utils.cpp:213
const std::unordered_set< std::string > & math_guard_real_general_functions()
Definition math_guard_utils.cpp:177
const std::unordered_set< std::string > & math_guard_int_general_functions()
Definition math_guard_utils.cpp:198
const std::unordered_set< std::string > & math_wrapper_function_names()
Definition math_guard_utils.cpp:148
const std::unordered_set< std::string > & math_guard_real_general_twoarg_functions()
Definition math_guard_utils.cpp:206
bool call_first_cpp_throw_in_args_or_keywords(const nlohmann::json &call, python_converter &converter, exprt &throw_expr)
Definition math_guard_utils.cpp:259
bool call_has_complex_in_args_or_keywords(const nlohmann::json &call, const python_converter &converter, const type_handler &type_handler, const std::string &current_function)
Definition math_guard_utils.cpp:223
const std::unordered_set< std::string > & math_module_function_names()
Definition math_guard_utils.cpp:161