1#ifndef ESBMC_JIMPLE_METHOD_BODY_H
2#define ESBMC_JIMPLE_METHOD_BODY_H
33 const std::string &class_name,
34 const std::string &function_name)
const
69 const std::string &class_name,
70 const std::string &function_name,
102 virtual std::string
to_string()
const override;
105 const std::string &class_name,
106 const std::string &function_name)
const override;
126 std::vector<std::shared_ptr<jimple_method_field>>
members;
129 std::map<std::string, statement> from_map = {
143 std::map<statement, std::string> to_map = {
bool is_nil() const
Definition irep.h:46
Base interface for Jimple AST.
Definition jimple_ast.h:19
A Jimple method definition.
Definition jimple_method_body.h:90
A Jimple method definition.
Definition jimple_method_body.h:99
virtual void from_json(const json &j) override
Initializes the current instance by parsing a JSON.
Definition jimple_method_body.cpp:45
virtual expr2tc to_code2t(contextt &ctx, const std::string &class_name, const std::string &function_name) const override
The IREP2 form of the body, for symbolt::set_value(const expr2tc &).
Definition jimple_method_body.cpp:14
statement
Definition jimple_method_body.h:109
@ SpecialInvoke
Definition jimple_method_body.h:114
@ StaticInvoke
Definition jimple_method_body.h:113
@ Declaration
Definition jimple_method_body.h:121
@ If
Definition jimple_method_body.h:120
@ Throw
Definition jimple_method_body.h:122
@ Return
Definition jimple_method_body.h:117
@ Goto
Definition jimple_method_body.h:119
@ Label
Definition jimple_method_body.h:118
@ VirtualInvoke
Definition jimple_method_body.h:116
@ Identity
Definition jimple_method_body.h:111
@ Location
Definition jimple_method_body.h:123
@ Assignment
Definition jimple_method_body.h:110
virtual std::string to_string() const override
Converts the object into a string.
Definition jimple_method_body.cpp:175
std::vector< std::shared_ptr< jimple_method_field > > members
Definition jimple_method_body.h:126
A Jimple method declaration.
Definition jimple_method_body.h:14
virtual exprt to_exprt(contextt &, const std::string &, const std::string &) const
Definition jimple_method_body.h:17
virtual expr2tc to_code2t(contextt &ctx, const std::string &class_name, const std::string &function_name) const
The IREP2 form of the body, for symbolt::set_value(const expr2tc &).
Definition jimple_method_body.h:31
The contents of a Jimple method.
Definition jimple_method_body.h:48
virtual exprt to_exprt(contextt &, const std::string &, const std::string &) const
Definition jimple_method_body.h:51
virtual expr2tc to_code2t(contextt &ctx, const std::string &class_name, const std::string &function_name, const locationt &loc) const
The IREP2 form of this statement, located at loc.
Definition jimple_method_body.h:67
irep_container< expr2t > expr2tc
Definition irep2.h:431
nlohmann::json json
Definition json.cpp:12
void migrate_expr(const exprt &expr, expr2tc &new_expr_ref)
Definition migrate.cpp:1512