Ruby  3.4.0dev (2024-12-06 revision 892c46283a5ea4179500d951c9d4866c0051f27b)
Data Fields
RObject Struct Reference

Ruby's ordinal objects. More...

#include <robject.h>

Data Fields

struct RBasic basic
 Basic part, including flags and class. More...
 
union {
   struct {
      VALUE *   ivptr
 Pointer to a C array that holds instance variables. More...
 
      struct rb_id_table *   iv_index_tbl
 This is a table that holds instance variable name to index mapping. More...
 
   }   heap
 Object that use separated memory region for instance variables use this pattern. More...
 
   VALUE   ary [1]
 
as
 Object's specific fields. More...
 

Detailed Description

Ruby's ordinal objects.

Unless otherwise special cased, all predefined and user-defined classes share this struct to hold their instances.

Definition at line 83 of file robject.h.

Field Documentation

◆ 

union { ... } RObject::as

Object's specific fields.

◆ basic

struct RBasic RObject::basic

Basic part, including flags and class.

Definition at line 136 of file robject.h.

◆ 

struct { ... } RObject::heap

Object that use separated memory region for instance variables use this pattern.

◆ iv_index_tbl

struct rb_id_table* RObject::iv_index_tbl

This is a table that holds instance variable name to index mapping.

Used when accessing instance variables using names.

Definition at line 107 of file robject.h.

◆ ivptr

VALUE* RObject::ivptr

Pointer to a C array that holds instance variables.

Definition at line 97 of file robject.h.


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