1#ifndef ESBMC_JIMPLE_TYPE_H
2#define ESBMC_JIMPLE_TYPE_H
17 virtual std::string
to_string()
const override;
57 ptr_type = pointer_type2tc(ptr_type);
71 std::map<std::string, BASE_TYPES> from_map = {
73 {
"int", BASE_TYPES::INT},
74 {
"byte", BASE_TYPES::INT},
75 {
"char", BASE_TYPES::INT},
76 {
"short", BASE_TYPES::INT},
77 {
"boolean", BASE_TYPES::INT},
78 {
"long", BASE_TYPES::INT},
79 {
"float", BASE_TYPES::INT},
80 {
"double", BASE_TYPES::INT},
81 {
"void", BASE_TYPES::_VOID},
83 {
"java.lang.Integer", BASE_TYPES::INT},
84 {
"java.util.Random", BASE_TYPES::INT},
86 {
"java.lang.String", BASE_TYPES::INT},
88 {
"Main", BASE_TYPES::INT},
89 {
"java.lang.AssertionError", BASE_TYPES::INT},
90 {
"java.lang.Runtime", BASE_TYPES::INT},
91 {
"java.lang.Class", BASE_TYPES::INT},
92 {
"__other", BASE_TYPES::OTHER}};
static const twodig_t base
Definition bigint.cpp:28
Base interface for Jimple AST.
Definition jimple_ast.h:19
Definition jimple_type.h:14
short dimensions
Definition jimple_type.h:36
std::string name
Definition jimple_type.h:35
virtual void from_json(const json &j) override
Initializes the current instance by parsing a JSON.
Definition jimple_type.cpp:3
virtual typet to_typet(const contextt &ctx) const
Definition jimple_type.cpp:32
virtual type2tc to_type2t(const contextt &ctx) const
IREP2 form of to_typet, for the natively-built expressions and for the declaration sites.
Definition jimple_type.cpp:61
typet get_arr_type(const contextt &ctx) const
Definition jimple_type.h:43
typet get_base_type(const contextt &ctx) const
Definition jimple_type.cpp:11
type2tc get_arr_type2(const contextt &ctx) const
Definition jimple_type.h:53
typet get_builtin_type() const
virtual std::string to_string() const override
Converts the object into a string.
Definition jimple_type.cpp:68
type2tc get_base_type2(const contextt &ctx) const
Definition jimple_type.cpp:39
bool is_array() const
Definition jimple_type.h:30
Definition std_types.h:438
@ OTHER
Definition goto_program.h:33
irep_container< type2t > type2tc
Definition irep2.h:430
nlohmann::json json
Definition json.cpp:12
@ INT
Definition ld_ast.h:174