78#if defined(MRBC_ALLOC_VMID)
86 mrbc_set_vm_id( v->
proc, 0 );
100 "tried to create Proc object without a block");
118 (callinfo_self ? callinfo_self->
method_id : 0),
120 if( !callinfo )
return;
122 if( callinfo_self ) {
142#include "_autogen_class_proc.h"
void mrbc_raw_free(void *ptr)
#define mrbc_immediate_value(...)
static void mrbc_set_tt(mrbc_value *p, mrbc_vtype type)
struct RObject mrbc_value
Value object. Default version.
void mrbc_proc_delete(mrbc_value *val)
mrbc_value mrbc_proc_new(struct VM *vm, void *irep, uint8_t b_or_m)
struct RProc mrbc_proc
Proc object.
void mrbc_raise(struct VM *vm, struct RClass *exc_cls, const char *msg)
Include at once the necessary header files.
mrbc_sym method_id
called method ID.
struct RClass * own_class
class that owns method.
uint8_t is_called_block
flags when block calls.
const uint8_t * inst
pointer to instruction in RITE binary
struct IREP * irep
Target IREP.
mrbc_value self
Copy of self object. Valid when 'B'.
uint8_t block_or_method
'B' or 'M' char code
struct CALLINFO * callinfo
callinfo when proc was created.
struct CALLINFO * callinfo_self
callinfo of self object. Valid when 'B'.
const mrbc_irep * cur_irep
IREP currently running.
mrbc_callinfo * callinfo_tail
Last point of CALLINFO link.
const uint8_t * inst
Instruction pointer.
mrbc_value * cur_regs
Current register top.
static void mrbc_decref(mrbc_value *v)
#define MRBC_INIT_OBJECT_HEADER(p, t)
static void mrbc_incref(mrbc_value *v)
mrbc_callinfo * mrbc_push_callinfo(mrbc_vm *vm, mrbc_sym method_id, int reg_offset, int n_args)
struct CALLINFO mrbc_callinfo
Call information.
struct VM mrbc_vm
Virtual Machine.
Global configuration of mruby/c VM's.