Ruby: vm_ifunc Struct Reference

Ruby 3.4.9p82 (2026-03-11 revision 76cca827ab52ab1d346a728f068d5b8da3e2952b)

Data Fields
vm_ifunc Struct Reference

IFUNC (Internal FUNCtion). More...

`#include <imemo.h>`

## Data Fields
VALUE | flags
VALUE * | svar_lep
rb_block_call_func_t | func
const void * | data
struct vm_ifunc_argc | argc

## Detailed Description

IFUNC (Internal FUNCtion).

Bookkeeping for converting a C function and some closed-over data into a block passable to methods. Like Ruby Proc, but not directly accessible at Ruby level since this is an imemo. See rb_block_call() and friends.

Definition at line 88 of file imemo.h.

## Field Documentation

## ◆ argc

struct vm_ifunc_argc vm_ifunc::argc

Definition at line 93 of file imemo.h.

## ◆ data

const void* vm_ifunc::data

Definition at line 92 of file imemo.h.

## ◆ flags

VALUE vm_ifunc::flags

Definition at line 89 of file imemo.h.

## ◆ func

rb_block_call_func_t vm_ifunc::func

Definition at line 91 of file imemo.h.

## ◆ svar_lep

VALUE* vm_ifunc::svar_lep

Definition at line 90 of file imemo.h.

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

- internal/imemo.h