1#ifndef BUILTIN_H_INCLUDED
2#define BUILTIN_H_INCLUDED
8 const void *
const func_ptr;
13 const char *
const name;
16 void (*compiler)(
FILE *, long, unsigned, bool);
19#define RB_BUILTIN_FUNCTION(_i, _name, _fname, _arity, _compiler) {\
21 .func_ptr = (void *)_fname, \
24 .compiler = _compiler, \
27void rb_load_with_builtin_functions(
const char *feature_name,
const struct rb_builtin_function *table);
29#ifndef rb_execution_context_t
31#define rb_execution_context_t rb_execution_context_t
51static inline void rb_builtin_function_check_arity9(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
52static inline void rb_builtin_function_check_arity10(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
53static inline void rb_builtin_function_check_arity11(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
54static inline void rb_builtin_function_check_arity12(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
55static inline void rb_builtin_function_check_arity13(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
56static inline void rb_builtin_function_check_arity14(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
57static inline void rb_builtin_function_check_arity15(
VALUE (*f)(
rb_execution_context_t *ec,
VALUE self,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE,
VALUE)){}
69#if defined(VM_CORE_H_EC_DEFINED) && VM_CORE_H_EC_DEFINED
70 return ec->cfp->ep[index];
72 return rb_vm_lvar_exposed(ec, index);
80 const unsigned char *bin;
uintptr_t VALUE
Type that represents a Ruby object.