57#define mrbc_type(o) ((o).tt)
58#define mrbc_integer(o) ((o).i)
59#define mrbc_float(o) ((o).d)
60#define mrbc_symbol(o) ((o).sym_id)
64#define mrbc_integer_value(n) ((mrbc_value){.tt = MRBC_TT_INTEGER, .i=(n)})
65#define mrbc_float_value(vm,n) ((mrbc_value){.tt = MRBC_TT_FLOAT, .d=(n)})
66#define mrbc_nil_value() ((mrbc_value){.tt = MRBC_TT_NIL})
67#define mrbc_true_value() ((mrbc_value){.tt = MRBC_TT_TRUE})
68#define mrbc_false_value() ((mrbc_value){.tt = MRBC_TT_FALSE})
69#define mrbc_bool_value(n) ((mrbc_value){.tt = (n)?MRBC_TT_TRUE:MRBC_TT_FALSE})
70#define mrbc_symbol_value(n) ((mrbc_value){.tt = MRBC_TT_SYMBOL, .sym_id=(n)})
71#define mrbc_immediate_value(...) MRBC_arg_choice(__VA_ARGS__, mrbc_immediate_value2, mrbc_immediate_value1) (__VA_ARGS__)
72#define mrbc_immediate_value1(type) \
73 ((mrbc_value){.tt=type})
74#define mrbc_immediate_value2(type, v2) \
75 ((mrbc_value){.tt=type, v2})
static void mrbc_set_nil(mrbc_value *p)
static void mrbc_set_symbol(mrbc_value *p, mrbc_sym sym_id)
static void mrbc_set_tt(mrbc_value *p, mrbc_vtype type)
static void mrbc_set_bool(mrbc_value *p, int n)
static void mrbc_set_float(mrbc_value *p, mrbc_float_t d)
struct RObject mrbc_value
Value object. Default version.
static void mrbc_set_true(mrbc_value *p)
static void mrbc_set_false(mrbc_value *p)
static void mrbc_set_integer(mrbc_value *p, mrbc_int_t n)
Value object. Default version.
struct RException * exception
struct RInstance * instance
int16_t mrbc_sym
mruby/c symbol ID
@ MRBC_TT_FALSE
FalseClass.
@ MRBC_TT_INTEGER
Integer.