|
ESBMC
Efficient SMT-based Context-Bounded Model Checker
|
#include <type_utils.h>
Static Public Member Functions | |
| static const irep_idt & | argument_identifier (const code_typet::argumentt &argument) |
| A parameter's id, preferring #identifier: frontends disagree on which key holds it and only #identifier crosses the IREP2 seam (clang_cpp_convert.cpp:2880 sets the plain key alone). | |
| static bool | is_builtin_type (const std::string &name) |
| static bool | is_str_only_method (const std::string &name) |
| A method of str that int and float lack: set(dir(str)) - set(dir(int)). | |
| static bool | is_consensus_type (const std::string &name) |
| static bool | is_typeddict (const std::string &name) |
| Check if a name is TypedDict from typing module. | |
| static bool | is_consensus_func (const std::string &name) |
| static std::string | get_type_from_consensus_func (const std::string &name) |
| static bool | is_nondet_collection_builder (const std::string &name) |
| True for the monomorphic collection builders in models/nondet.py (_nondet_list_int, _nondet_dict_str_float, ...), which the preprocessor substitutes for nondet_list/nondet_dict. | |
| static bool | is_python_model_func (const std::string &name) |
| static bool | is_python_exceptions (const std::string &name) |
| static bool | is_c_model_func (const std::string &func_name) |
| static bool | is_ordered_comparison (const std::string &op) |
| static bool | is_relational_op (const std::string &op) |
| static void | set_cpp_type (typet &t, const irep_idt &value) |
| static irep_idt | get_cpp_type (const typet &t) |
| static void | set_member_name (typet &t, const irep_idt &value) |
| static void | remove_member_name (typet &t) |
| static bool | is_optional_scalar (const typet &t) |
| static bool | is_optional_struct (const typet &t) |
| static bool | is_optional_str_pointer (const typet &t) |
| static bool | is_char_type (const typet &t) |
| static bool | is_bytes_array (const typet &t) |
| static bool | is_float_vs_char (const exprt &a, const exprt &b) |
| static std::string | remove_quotes (const std::string &str) |
| static typet | select_widest_type (const TypeFlags &flags, const typet &default_type) |
| static TypeFlags | extract_union_types (const nlohmann::json &slice) |
| static TypeFlags | extract_binop_union_types (const nlohmann::json &binop_node) |
| static bool | annotation_admits_none (const nlohmann::json &ann) |
| static bool | is_integer_type (const typet &type) |
| static bool | is_numpy_string_array (const typet &type) |
| A numpy array of fixed-width strings: arrays of char arrays. | |
| static typet | array_scalar_type (const typet &type) |
The scalar type at the leaves of the (possibly nested) array type. | |
| static bool | is_numpy_complex_array (const typet &type) |
| A numpy array of complex numbers. | |
| static bool | is_string_type (const typet &type) |
| static bool | is_dict_subscript (const nlohmann::json &element) |
| static bool | is_type_identifier (const std::string &name) |
| static bool | strip_pep515_underscores (const std::string &s, std::string &out) |
Copies s to out with PEP 515 underscore separators removed. | |
|
inlinestatic |
|
inlinestatic |
A parameter's id, preferring #identifier: frontends disagree on which key holds it and only #identifier crosses the IREP2 seam (clang_cpp_convert.cpp:2880 sets the plain key alone).
The scalar type at the leaves of the (possibly nested) array type.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
True for the monomorphic collection builders in models/nondet.py (_nondet_list_int, _nondet_dict_str_float, ...), which the preprocessor substitutes for nondet_list/nondet_dict.
A numpy array of complex numbers.
A numpy array of fixed-width strings: arrays of char arrays.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
A method of str that int and float lack: set(dir(str)) - set(dir(int)).
|
inlinestatic |
|
inlinestatic |
Check if a name is TypedDict from typing module.
TypedDict is a special construct that should not be treated as a user-defined base class. Classes inheriting from TypedDict are converted to dict type (matching Python's runtime behavior).
| name | The base class name to check |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Copies s to out with PEP 515 underscore separators removed.
Returns false when one is misplaced: a numeric string may carry a single underscore between two digits, never leading, trailing or doubled.