diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/mruby/hash.h | 6 | ||||
| -rw-r--r-- | include/mruby/string.h | 12 |
2 files changed, 5 insertions, 13 deletions
diff --git a/include/mruby/hash.h b/include/mruby/hash.h index baace7567..68fbf5a76 100644 --- a/include/mruby/hash.h +++ b/include/mruby/hash.h @@ -41,9 +41,9 @@ struct kh_ht * mrb_hash_tbl(mrb_state *mrb, mrb_value hash); #define MRB_RHASH_PROCDEFAULT_P(h) (RHASH(h)->flags & MRB_HASH_PROC_DEFAULT) /* GC functions */ -void mrb_gc_mark_ht(mrb_state*, struct RHash*); -size_t mrb_gc_mark_ht_size(mrb_state*, struct RHash*); -void mrb_gc_free_ht(mrb_state*, struct RHash*); +void mrb_gc_mark_hash(mrb_state*, struct RHash*); +size_t mrb_gc_mark_hash_size(mrb_state*, struct RHash*); +void mrb_gc_free_hash(mrb_state*, struct RHash*); #if defined(__cplusplus) } /* extern "C" { */ diff --git a/include/mruby/string.h b/include/mruby/string.h index a1b38d039..26d1344d8 100644 --- a/include/mruby/string.h +++ b/include/mruby/string.h @@ -15,18 +15,12 @@ extern "C" { extern const char mrb_digitmap[]; -typedef struct mrb_shared_string { - int refcnt; - char *ptr; - mrb_int len; -} mrb_shared_string; - struct RString { MRB_OBJECT_HEADER; mrb_int len; union { mrb_int capa; - mrb_shared_string *shared; + struct mrb_shared_string *shared; } aux; char *ptr; }; @@ -37,10 +31,8 @@ struct RString { #define RSTRING_LEN(s) (RSTRING(s)->len) #define RSTRING_CAPA(s) (RSTRING(s)->aux.capa) #define RSTRING_END(s) (RSTRING(s)->ptr + RSTRING(s)->len) -#define MRB_STR_SHARED 1 -#define MRB_STR_STATIC (1<<1) -void mrb_str_decref(mrb_state*, mrb_shared_string*); +void mrb_gc_free_str(mrb_state*, struct RString*); void mrb_str_modify(mrb_state*, struct RString*); mrb_value mrb_str_literal(mrb_state*, mrb_value); void mrb_str_concat(mrb_state*, mrb_value, mrb_value); |
