rb_method_definition_struct Struct Reference

`#include <method.h>`

## Data Fields

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

## Detailed Description

Definition at line 59 of file method.h.

## Field Documentation

int rb_method_definition_struct::alias_count

Definition at line 72 of file method.h.

Referenced by method_clone(), method_unbind(), mnew(), rb_add_method(), rb_free_method_entry(), rb_method_entry_make(), and umethod_bind().

rb_method_attr_t rb_method_definition_struct::attr

Definition at line 65 of file method.h.

Referenced by mark_method_entry(), rb_add_method(), rb_method_definition_eq(), rb_method_location(), vm_call0(), and vm_call_method().

union { ... } rb_method_definition_struct::body

Referenced by check_cfunc(), clone_method(), mark_method_entry(), method_get_iseq(), rb_add_method(), rb_get_alloc_func(), rb_method_definition_eq(), rb_method_entry_arity(), rb_method_entry_make(), rb_method_location(), rb_obj_basic_to_s_p(), vm_call0(), vm_call_bmethod(), vm_call_cfunc(), vm_call_method(), and vm_setup_method().

rb_method_cfunc_t rb_method_definition_struct::cfunc

Definition at line 64 of file method.h.

Referenced by check_cfunc(), rb_add_method(), rb_get_alloc_func(), rb_method_definition_eq(), rb_method_entry_arity(), rb_obj_basic_to_s_p(), vm_call0(), and vm_call_cfunc().

rb_iseq_t* rb_method_definition_struct::iseq

Definition at line 63 of file method.h.

Referenced by clone_method(), mark_method_entry(), method_get_iseq(), rb_add_method(), rb_method_definition_eq(), rb_method_entry_arity(), rb_method_entry_make(), and vm_setup_method().

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

Referenced by rb_add_method(), rb_method_definition_eq(), rb_method_entry_arity(), vm_call0(), and vm_call_method().

ID rb_method_definition_struct::original_id

Definition at line 61 of file method.h.

Referenced by control_frame_dump(), frame_func_id(), method_inspect(), mnew(), rb_add_method(), rb_alias(), rb_method_call_status(), rb_method_definition_eq(), rb_method_entry_make(), rb_thread_current_status(), rb_thread_method_id_and_class(), vm_backtrace_each(), vm_call_method(), vm_call_super(), and vm_search_superclass().

VALUE rb_method_definition_struct::proc

Definition at line 66 of file method.h.

Referenced by mark_method_entry(), method_get_iseq(), rb_add_method(), rb_method_definition_eq(), rb_method_entry_arity(), rb_method_entry_make(), and vm_call_bmethod().

rb_method_type_t rb_method_definition_struct::type

Definition at line 60 of file method.h.

Referenced by add_opt_method(), check_cfunc(), clone_method(), mark_method_entry(), method_get_iseq(), method_inspect(), mnew(), rb_add_method(), rb_alias(), rb_get_alloc_func(), rb_method_boundp(), rb_method_definition_eq(), rb_method_entry_arity(), rb_method_entry_make(), rb_method_entry_set(), rb_method_location(), rb_mod_modfunc(), rb_obj_basic_to_s_p(), rb_vm_check_redefinition_opt_method(), remove_method(), vm_call0(), and vm_call_method().

The documentation for this struct was generated from the following file:

- method.h