|
| static bool | has_side_effect (const exprt &e) |
| static exprt * | find_subexpr (exprt &e, const exprt &what) |
| static exprt * | find_normalised_subexpr (exprt &e, exprt &what) |
| static void | type_untyped_nondet_operand (const std::string &op, exprt &lhs, exprt &rhs) |
| static exprt | relational_nondet_fallback (const std::string &op, const exprt &lhs, const exprt &rhs, const locationt &loc) |
| static void | attach_symbol_location (exprt &expr, contextt &symbol_table) |
| exprt | handle_float_vs_string (exprt &bin_expr, const std::string &op) |
| static const nlohmann::json * | arithmetic_range_operand (const exprt &x, const nlohmann::json &element) |
| | The range(...) call a membership test of x can evaluate arithmetically: x an integer variable or constant, at most three positional arguments, and no call in them (they are converted again).
|
| static bool | container_is_name (const nlohmann::json &element) |
| | True when the container of membership test element is a variable or attribute, the only list operand that can hold None.
|
| static void | reject_numpy_string_membership (const std::string &op, const exprt &rhs) |
| static bool | contains_call (const nlohmann::json &node) |
| static bool | is_in_bounds_constant_index (const exprt &expr) |
| static bool | is_read_ahead_type (const typet &type) |
| static void | reject_complex_array_arithmetic (const exprt &lhs, const exprt &rhs) |
| static exprt | cast_to (const exprt &value, const typet &type) |
| static bool | is_numeric_scalar_type (const typet &type) |
| static bool | is_char_element (const typet &type) |
| static std::optional< std::vector< long long > > | numeric_array_shape (const typet &type) |
| static const typet & | leaf_type (const typet &type) |
| static typet | shaped_type (const typet &leaf, const std::vector< long long > &shape) |
| static typet | elementwise_result_type (const std::string &op, const typet &array_elem, const typet &lhs_elem, const typet &rhs_elem) |
| static const std::set< std::string > & | bitwise_ops () |
| static bool | is_elementwise_op (const std::string &op) |
| static std::optional< std::vector< long long > > | operand_shape (const typet &type) |
| static std::string | shape_text (const std::vector< long long > &shape) |
| static std::optional< std::vector< long long > > | broadcast_shapes (std::vector< long long > a, std::vector< long long > b) |
| static std::optional< std::pair< std::vector< long long >, std::vector< long long > > > | elementwise_shapes (const std::string &op, const exprt &lhs, const exprt &rhs) |
| static std::size_t | array_rank (const typet &type) |
| static std::string | bitwise_ufunc (const std::string &op) |
| static std::vector< exprt > | flat_elements (const exprt &operand) |