move mrb_shared_string definition to src/string.c

parent 5c68195c
......@@ -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;
};
......@@ -40,7 +34,7 @@ struct RString {
#define MRB_STR_SHARED 1
#define MRB_STR_STATIC (1<<1)
void mrb_str_decref(mrb_state*, mrb_shared_string*);
void mrb_str_decref(mrb_state*, struct mrb_shared_string*);
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);
......
......@@ -23,6 +23,12 @@
const char mrb_digitmap[] = "0123456789abcdefghijklmnopqrstuvwxyz";
typedef struct mrb_shared_string {
int refcnt;
char *ptr;
mrb_int len;
} mrb_shared_string;
static mrb_value str_replace(mrb_state *mrb, struct RString *s1, struct RString *s2);
static mrb_value mrb_str_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment