Ruby: include/ruby/internal/core/rfile.h Source File

Ruby 3.4.7p58 (2025-10-08 revision 7a5688e2a27668e48f8d6ff4af5b2208b98a2f5e)

rfile.h
Go to the documentation of this file.
1#ifndef RBIMPL_RFILE_H /*-*-C++-*-vi:se ft=cpp:*/
2#define RBIMPL_RFILE_H
23#include "ruby/internal/core/rbasic.h"
24#include "ruby/internal/cast.h"
25
26/* rb_io_t is in ruby/io.h. The header file has historically not been included
27 * into ruby/ruby.h. We follow that tradition. */
28struct rb_io;
29
35 struct RFile {
36
38 struct RBasic basic;
39
41 struct rb_io *fptr;
42};
43
50#define RFILE(obj) RBIMPL_CAST((struct RFile *)(obj))
51#endif /* RBIMPL_RFILE_H */
rbasic.h
Defines struct RBasic.
RBasic
Ruby object's base components.
Definition rbasic.h:63
RFile
Ruby's File and IO.
Definition rfile.h:35
RFile::basic
struct RBasic basic
Basic part, including flags and class.
Definition rfile.h:38
RFile::fptr
struct rb_io * fptr
IO's specific fields.
Definition rfile.h:41
rb_io
Ruby's IO, metadata and buffers.
Definition io.h:143