Ruby: internal/proc.h Source File

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

proc.h
Go to the documentation of this file.
1#ifndef INTERNAL_PROC_H /*-*-C-*-vi:se ft=c:*/
2#define INTERNAL_PROC_H
12#include "ruby/ruby.h" /* for rb_block_call_func_t */
13#include "ruby/st.h" /* for st_index_t */
14struct rb_block; /* in vm_core.h */
15struct rb_iseq_struct; /* in vm_core.h */
16
17/* proc.c */
18 VALUE rb_proc_location(VALUE self);
19 st_index_t rb_hash_proc(st_index_t hash, VALUE proc);
20int rb_block_pair_yield_optimizable(void);
21int rb_block_arity(void);
22int rb_block_min_max_arity(int *max);
23 VALUE rb_block_to_s(VALUE self, const struct rb_block *block, const char *additional_info);
24 VALUE rb_callable_receiver(VALUE);
25
26 MJIT_SYMBOL_EXPORT_BEGIN
27 VALUE rb_func_proc_new(rb_block_call_func_t func, VALUE val);
28 VALUE rb_func_lambda_new(rb_block_call_func_t func, VALUE val, int min_argc, int max_argc);
29 VALUE rb_iseq_location(const struct rb_iseq_struct *iseq);
30 VALUE rb_sym_to_proc(VALUE sym);
31 MJIT_SYMBOL_EXPORT_END
32
33#endif /* INTERNAL_PROC_H */
MJIT_SYMBOL_EXPORT_END
#define MJIT_SYMBOL_EXPORT_END
Definition: dllexport.h:63
MJIT_SYMBOL_EXPORT_BEGIN
#define MJIT_SYMBOL_EXPORT_BEGIN
Definition: dllexport.h:62
max
int max
Definition: enough.c:225
sym
#define sym(name)
Definition: enumerator.c:4007
rb_iseq_location
VALUE rb_iseq_location(const struct rb_iseq_struct *iseq)
rb_callable_receiver
VALUE rb_callable_receiver(VALUE)
Definition: proc.c:2787
rb_hash_proc
st_index_t rb_hash_proc(st_index_t hash, VALUE proc)
Definition: proc.c:1433
rb_block_arity
int rb_block_arity(void)
Definition: proc.c:1193
rb_func_lambda_new
VALUE rb_func_lambda_new(rb_block_call_func_t func, VALUE val, int min_argc, int max_argc)
Definition: proc.c:742
rb_block_to_s
VALUE rb_block_to_s(VALUE self, const struct rb_block *block, const char *additional_info)
Definition: proc.c:1491
rb_block_pair_yield_optimizable
int rb_block_pair_yield_optimizable(void)
Definition: proc.c:1158
rb_func_proc_new
VALUE rb_func_proc_new(rb_block_call_func_t func, VALUE val)
Definition: proc.c:735
rb_proc_location
VALUE rb_proc_location(VALUE self)
Definition: proc.c:1387
rb_sym_to_proc
VALUE rb_sym_to_proc(VALUE sym)
Definition: proc.c:1443
rb_block_min_max_arity
int rb_block_min_max_arity(int *max)
Definition: proc.c:1226
rb_block_call_func_t
rb_block_call_func * rb_block_call_func_t
Definition: iterator.h:34
ruby.h
st.h
st_index_t
st_data_t st_index_t
Definition: st.h:50
rb_block
Definition: vm_core.h:760
rb_iseq_struct
Definition: vm_core.h:444
VALUE
unsigned long VALUE
Definition: value.h:38