15#ifndef MRBC_SRC_SYMBOL_H_
16#define MRBC_SRC_SYMBOL_H_
22#include "_autogen_builtin_symbol.h"
31#define MRBC_SYM(sym) MRBC_SYMID_##sym
33#define MRB_SYM(sym) MRBC_SYMID_##sym
48void mrbc_debug_dump_symbol(
void);
49void mrbc_symbol_statistics(
int *total_used);
75 return (
'0' <= s[0] && s[0] <= (
'9'+6));
81static inline mrbc_sym str_to_symid(
const char *str) {
85static inline const char *symid_to_str(
mrbc_sym sym_id) {
struct RObject mrbc_value
Value object. Default version.
mrbc_sym mrbc_search_symid(const char *str)
mrbc_value mrbc_symbol_new(struct VM *vm, const char *str)
mrbc_sym mrbc_str_to_symid(const char *str)
void mrbc_separate_nested_symid(mrbc_sym sym_id, mrbc_sym *id1, mrbc_sym *id2)
void mrbc_cleanup_symbol(void)
const char * mrbc_symid_to_str(mrbc_sym sym_id)
void make_nested_symbol_s(char *buf, mrbc_sym id1, mrbc_sym id2)
static const char * mrbc_symbol_cstr(const mrbc_value *v)
static int mrbc_is_nested_symid(mrbc_sym sym_id)
mruby/c value definitions
int16_t mrbc_sym
mruby/c symbol ID