rb_method_definition_struct Struct Reference

#include <method.h>


Data Fields

rb_method_type_t type
ID original_id
union {
      OPTIMIZED_METHOD_TYPE_SEND
      OPTIMIZED_METHOD_TYPE_CALL
      OPTIMIZED_METHOD_TYPE__MAX
enum  method_optimized_type { OPTIMIZED_METHOD_TYPE_SEND, OPTIMIZED_METHOD_TYPE_CALL, OPTIMIZED_METHOD_TYPE__MAX }
   rb_iseq_t *const   iseq
   rb_method_cfunc_t   cfunc
   rb_method_attr_t   attr
   const VALUE   proc
   enum rb_method_definition_struct::
{ ... } ::method_optimized_type   optimize_type
   rb_method_entry_struct *   orig_me
body
int alias_count


Detailed Description

Definition at line 78 of file method.h.


Field Documentation

int rb_method_definition_struct::alias_count

Definition at line 94 of file method.h.

Referenced by make_method_entry_refined(), method_clone(), method_unbind(), mnew_from_me(), rb_add_method(), rb_method_entry_make(), release_method_definition(), and umethod_bind().

rb_method_attr_t rb_method_definition_struct::attr

Definition at line 84 of file method.h.

Referenced by mark_method_entry(), method_def_location(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_make(), vm_call0_body(), vm_call_attrset(), and vm_call_ivar().

union { ... } rb_method_definition_struct::body

Referenced by check_cfunc(), clone_method(), get_original_method_entry(), make_method_entry_refined(), mark_method_entry(), method_def_location(), method_get_iseq(), move_refined_method(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_make(), rb_method_entry_min_max_arity(), rb_obj_basic_to_s_p(), rb_undef(), release_method_definition(), vm_call0_body(), vm_call0_cfunc_with_frame(), vm_call_attrset(), vm_call_bmethod_body(), vm_call_iseq_setup(), vm_call_iseq_setup_normal(), vm_call_iseq_setup_tailcall(), vm_call_ivar(), vm_call_method(), vm_method_cfunc_entry(), and vm_search_super_method().

rb_method_cfunc_t rb_method_definition_struct::cfunc

Definition at line 83 of file method.h.

Referenced by check_cfunc(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_min_max_arity(), rb_obj_basic_to_s_p(), vm_call0_cfunc_with_frame(), and vm_method_cfunc_entry().

rb_iseq_t* const rb_method_definition_struct::iseq

Definition at line 82 of file method.h.

Referenced by clone_method(), mark_method_entry(), method_get_iseq(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_make(), rb_method_entry_min_max_arity(), vm_call_iseq_setup(), vm_call_iseq_setup_normal(), vm_call_iseq_setup_tailcall(), and vm_search_super_method().

enum { ... } ::method_optimized_type rb_method_definition_struct::optimize_type

Referenced by rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_min_max_arity(), vm_call0_body(), and vm_call_method().

struct rb_method_entry_struct* rb_method_definition_struct::orig_me

Definition at line 92 of file method.h.

Referenced by get_original_method_entry(), make_method_entry_refined(), mark_method_entry(), move_refined_method(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_undef(), release_method_definition(), vm_call0_body(), and vm_call_method().

ID rb_method_definition_struct::original_id

Definition at line 80 of file method.h.

Referenced by control_frame_dump(), frame_func_id(), make_method_entry_refined(), method_inspect(), method_original_name(), mnew_from_me(), original_method_entry(), rb_add_method(), rb_alias(), rb_hash_method_definition(), rb_method_call_status(), rb_method_definition_eq(), rb_method_entry_make(), rb_thread_current_status(), rb_vm_control_frame_id_and_class(), vm_call_super(), and vm_search_superclass().

const VALUE rb_method_definition_struct::proc

Definition at line 85 of file method.h.

Referenced by mark_method_entry(), method_get_iseq(), rb_add_method(), rb_hash_method_definition(), rb_method_definition_eq(), rb_method_entry_make(), rb_method_entry_min_max_arity(), and vm_call_bmethod_body().

rb_method_type_t rb_method_definition_struct::type

Definition at line 79 of file method.h.

Referenced by check_cfunc(), clone_method(), make_method_entry_refined(), mark_method_entry(), method_def_location(), method_entry_i(), method_entry_set(), method_get_iseq(), method_inspect(), mnew_from_me(), move_refined_method(), original_method_entry(), rb_add_method(), rb_alias(), rb_hash_method_definition(), rb_method_boundp(), rb_method_definition_eq(), rb_method_entry_make(), rb_method_entry_min_max_arity(), rb_method_entry_with_refinements(), rb_method_entry_without_refinements(), rb_mod_modfunc(), rb_obj_basic_to_s_p(), rb_resolve_refined_method(), rb_undef(), rb_vm_check_redefinition_opt_method(), release_method_definition(), remove_method(), vm_call0_body(), vm_call_method(), vm_method_cfunc_entry(), and vm_search_super_method().


The documentation for this struct was generated from the following file:
Generated on 19 Jul 2016 for Ruby by  doxygen 1.4.7