14#ifndef MRBC_SRC_SYMBOL_H_
15#define MRBC_SRC_SYMBOL_H_
21#include "_autogen_builtin_symbol.h"
30#define MRBC_SYM(sym) MRBC_SYMID_##sym
31#define MRB_SYM(sym) MRBC_SYMID_##sym
45void mrbc_debug_dump_symbol(
void);
46void mrbc_symbol_statistics(
int *total_used);
72 return (
'0' <= s[0] && s[0] <= (
'9'+6));
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 mrbc_sym str_to_symid(const char *str)
static const char * symid_to_str(mrbc_sym sym_id)
static int mrbc_is_nested_symid(mrbc_sym sym_id)
mruby/c value definitions
int16_t mrbc_sym
mruby/c symbol ID
struct RObject mrbc_value