|
Ruby 4.0.0dev (2025-11-27 revision 2e770cdf773d79327cfdeb8178a1cb9b340f4560)
|
parameter information More...
#include <vm_core.h>
Data Structures | |
| struct | rb_iseq_param_keyword |
Data Fields | ||
| struct { | ||
| unsigned int has_lead: 1 | ||
| unsigned int has_opt: 1 | ||
| unsigned int has_rest: 1 | ||
| unsigned int has_post: 1 | ||
| unsigned int has_kw: 1 | ||
| unsigned int has_kwrest: 1 | ||
| unsigned int has_block: 1 | ||
| unsigned int ambiguous_param0: 1 | ||
| unsigned int accepts_no_kwarg: 1 | ||
| unsigned int ruby2_keywords: 1 | ||
| unsigned int anon_rest: 1 | ||
| unsigned int anon_kwrest: 1 | ||
| unsigned int use_block: 1 | ||
| unsigned int forwardable: 1 | ||
| } | flags | |
| unsigned int | size | |
| int | lead_num | |
| int | opt_num | |
| int | rest_start | |
| int | post_start | |
| int | post_num | |
| int | block_start | |
| const VALUE * | opt_table | |
| const struct rb_iseq_constant_body::rb_iseq_parameters::rb_iseq_param_keyword * | keyword | |
parameter information
def m(a1, a2, ..., aM, # mandatory b1=(...), b2=(...), ..., bN=(...), # optional *c, # rest d1, d2, ..., dO, # post e1:(...), e2:(...), ..., eK:(...), # keyword **f, # keyword_rest &g) # block =>
lead_num = M opt_num = N rest_start = M+N post_start = M+N+(*1) post_num = O keyword_num = K block_start = M+N+(*1)+O+K keyword_bits = M+N+(*1)+O+K+(&1) size = M+N+O+(*1)+K+(&1)+(**1) // parameter size.
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::accepts_no_kwarg |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::ambiguous_param0 |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::anon_kwrest |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::anon_rest |
| int rb_iseq_constant_body::rb_iseq_parameters::block_start |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::forwardable |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_block |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_kw |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_kwrest |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_lead |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_opt |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_post |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::has_rest |
| const VALUE* rb_iseq_constant_body::rb_iseq_parameters::opt_table |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::ruby2_keywords |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::size |
| unsigned int rb_iseq_constant_body::rb_iseq_parameters::use_block |