Ruby 2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)

Public Member Functions | Data Fields
rb_method_definition_struct Struct Reference

`#include <method.h>`

## Public Member Functions
| BITFIELD (rb_method_type_t, type, VM_METHOD_TYPE_MINIMUM_BITS)

## Data Fields
int | alias_count: 28
int | complemented_count: 28
union {
rb_method_iseq_t iseq
rb_method_cfunc_t cfunc
rb_method_attr_t attr
rb_method_alias_t alias
rb_method_refined_t refined
rb_method_bmethod_t bmethod
enum method_optimized_type optimize_type
} | body
ID | original_id
uintptr_t | method_serial
rb_method_type_t | type: 4
union {
rb_method_iseq_t iseq
rb_method_cfunc_t cfunc
rb_method_attr_t attr
rb_method_alias_t alias
rb_method_refined_t refined
rb_method_bmethod_t bmethod
enum method_optimized_type optimize_type
} | body

## Detailed Description

Definition at line 163 of file method.h.

## Member Function Documentation

## ◆ BITFIELD()

rb_method_definition_struct::BITFIELD | ( | rb_method_type_t | ,
|  | type | ,
|  | VM_METHOD_TYPE_MINIMUM_BITS |
| ) |  |

## Field Documentation

## ◆ alias

rb_method_alias_t rb_method_definition_struct::alias

Definition at line 172 of file method.h.

## ◆ alias_count

int rb_method_definition_struct::alias_count

Definition at line 165 of file method.h.

## ◆ attr

rb_method_attr_t rb_method_definition_struct::attr

Definition at line 171 of file method.h.

## ◆ bmethod

rb_method_bmethod_t rb_method_definition_struct::bmethod

Definition at line 174 of file method.h.

Referenced by rb_resolve_me_location().

## ◆ body [1/2]

union { ... } rb_method_definition_struct::body

Referenced by rb_method_entry_complement_defined_class(), and rb_resolve_me_location().

## ◆ body [2/2]

union { ... } rb_method_definition_struct::body

## ◆ cfunc

rb_method_cfunc_t rb_method_definition_struct::cfunc

Definition at line 170 of file method.h.

## ◆ complemented_count

int rb_method_definition_struct::complemented_count

Definition at line 166 of file method.h.

## ◆ iseq

rb_method_iseq_t rb_method_definition_struct::iseq

Definition at line 169 of file method.h.

Referenced by rb_resolve_me_location().

## ◆ method_serial

uintptr_t rb_method_definition_struct::method_serial

Definition at line 180 of file method.h.

Referenced by rb_method_definition_create(), and rb_vm_call0().

## ◆ optimize_type

enum method_optimized_type rb_method_definition_struct::optimize_type

Definition at line 176 of file method.h.

## ◆ original_id

ID rb_method_definition_struct::original_id

Definition at line 179 of file method.h.

Referenced by rb_method_definition_create(), rb_vm_control_frame_id_and_class(), and rb_vm_pop_cfunc_frame().

## ◆ refined

rb_method_refined_t rb_method_definition_struct::refined

Definition at line 173 of file method.h.

Referenced by rb_method_entry_complement_defined_class().

## ◆ type

rb_method_type_t rb_method_definition_struct::type

Definition at line 8877 of file rb_mjit_min_header-2.7.0.h.

Referenced by rb_method_definition_create(), rb_method_definition_set(), rb_method_entry_complement_defined_class(), and rb_resolve_me_location().

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

- method.h
- /msysdev/ruby/src/build-x86_64-pc-msys/include/ruby-2.7.0/x86_64-msys/rb_mjit_min_header-2.7.0.h