GDB (xrefs)
|
#include "rust-exp.h"
Public Member Functions | |
value * | evaluate (struct type *expect_type, struct expression *exp, enum noside noside) override |
value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const std::vector< operation_up > &args) override |
enum exp_opcode | opcode () const override |
![]() | |
const std::string & | get_string () const |
value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const std::vector< operation_up > &args) override |
virtual bool | complete (struct expression *exp, completion_tracker &tracker) |
![]() | |
tuple_holding_operation (Arg... args) | |
DISABLE_COPY_AND_ASSIGN (tuple_holding_operation) | |
bool | uses_objfile (struct objfile *objfile) const override |
void | dump (struct ui_file *stream, int depth) const override |
![]() | |
virtual | ~operation ()=default |
virtual value * | evaluate (struct type *expect_type, struct expression *exp, enum noside noside)=0 |
virtual value * | evaluate_with_coercion (struct expression *exp, enum noside noside) |
virtual value * | evaluate_for_cast (struct type *expect_type, struct expression *exp, enum noside noside) |
virtual value * | evaluate_for_sizeof (struct expression *exp, enum noside noside) |
virtual value * | evaluate_for_address (struct expression *exp, enum noside noside) |
virtual value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const std::vector< operation_up > &args) |
virtual bool | constant_p () const |
virtual bool | uses_objfile (struct objfile *objfile) const |
void | generate_ax (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *cast_type=nullptr) |
virtual enum exp_opcode | opcode () const =0 |
virtual void | dump (struct ui_file *stream, int depth) const =0 |
virtual void | set_outermost () |
Additional Inherited Members | |
![]() | |
bool | complete (struct expression *exp, completion_tracker &tracker, const char *prefix) |
tuple_holding_operation (Arg... args) | |
![]() | |
operation ()=default | |
DISABLE_COPY_AND_ASSIGN (operation) | |
value * | evaluate_funcall (struct type *expect_type, struct expression *exp, enum noside noside, const char *function_name, const std::vector< operation_up > &args) |
virtual void | do_generate_ax (struct expression *exp, struct agent_expr *ax, struct axs_value *value, struct type *cast_type) |
![]() | |
std::tuple< Arg... > | m_storage |
Definition at line 162 of file rust-exp.h.
|
overridevirtual |
Implements expr::operation.
Definition at line 1429 of file rust-lang.c.
References type::code(), EVAL_AVOID_SIDE_EFFECTS, field_name(), expr::tuple_holding_operation< operation_up, std::string >::m_storage, type::name(), resolve_dynamic_type(), rust_empty_enum_p(), rust_enum_p(), rust_enum_variant(), rust_last_path_segment(), rust_tuple_struct_type_p(), rust_tuple_type_p(), value_address(), value_contents(), VALUE_LVAL, value_primitive_field(), value_struct_elt(), value_type(), and value_zero().
Referenced by evaluate_funcall().
|
overridevirtual |
Reimplemented from expr::structop_base_operation.
Definition at line 1529 of file rust-lang.c.
References address_of_variable(), call_function_by_hand(), code, type::code(), EVAL_AVOID_SIDE_EFFECTS, evaluate(), type::field(), get_selected_block(), lookup_symbol(), expr::tuple_holding_operation< operation_up, std::string >::m_storage, name, type::name(), not_lval, type::num_fields(), rust_tuple_type_p(), block_symbol::symbol, type::target_type(), field::type(), symbol::type(), value_addr(), value_ind(), value_type(), value_zero(), and VAR_DOMAIN.
|
inlineoverridevirtual |
Implements expr::operation.
Definition at line 178 of file rust-exp.h.