Commit e3d17e54 authored by Yukihiro Matsumoto's avatar Yukihiro Matsumoto

mruby/string.h: rename buf to ptr

parent c94e0ce9
......@@ -27,7 +27,7 @@ extern const char mrb_digitmap[];
struct mrb_shared_string {
int refcnt;
char *buf;
char *ptr;
int len;
};
......@@ -38,15 +38,15 @@ struct RString {
int capa;
struct mrb_shared_string *shared;
} aux;
char *buf;
char *ptr;
};
#define mrb_str_ptr(s) ((struct RString*)((s).value.p))
#define RSTRING(s) ((struct RString*)((s).value.p))
#define RSTRING_PTR(s) (RSTRING(s)->buf)
#define RSTRING_PTR(s) (RSTRING(s)->ptr)
#define RSTRING_LEN(s) (RSTRING(s)->len)
#define RSTRING_CAPA(s) (RSTRING(s)->aux.capa)
#define RSTRING_END(s) (RSTRING(s)->buf + RSTRING(s)->len)
#define RSTRING_END(s) (RSTRING(s)->ptr + RSTRING(s)->len)
#define MRB_STR_SHARED 256
void mrb_str_decref(mrb_state*, struct mrb_shared_string*);
......
......@@ -449,7 +449,7 @@ mrb_get_args(mrb_state *mrb, const char *format, ...)
ss = to_str(mrb, *sp);
s = mrb_str_ptr(ss);
ps = va_arg(ap, char**);
*ps = s->buf;
*ps = s->ptr;
pl = va_arg(ap, int*);
*pl = s->len;
i++; sp++;
......@@ -463,11 +463,11 @@ mrb_get_args(mrb_state *mrb, const char *format, ...)
ss = to_str(mrb, *sp);
s = mrb_str_ptr(ss);
if (strlen(s->buf) != s->len) {
if (strlen(s->ptr) != s->len) {
mrb_raise(mrb, E_ARGUMENT_ERROR, "String contains NUL");
}
ps = va_arg(ap, char**);
*ps = s->buf;
*ps = s->ptr;
i++; sp++;
}
break;
......@@ -959,7 +959,7 @@ mrb_class_name(mrb_state *mrb, struct RClass* c)
{
mrb_value path = mrb_class_path(mrb, c);
if (mrb_nil_p(path)) return 0;
return mrb_str_ptr(path)->buf;
return mrb_str_ptr(path)->ptr;
}
const char*
......
......@@ -472,7 +472,7 @@ obj_free(mrb_state *mrb, struct RBasic *obj)
if (obj->flags & MRB_STR_SHARED)
mrb_str_decref(mrb, ((struct RString*)obj)->aux.shared);
else
mrb_free(mrb, ((struct RString*)obj)->buf);
mrb_free(mrb, ((struct RString*)obj)->ptr);
break;
case MRB_TT_RANGE:
......
......@@ -433,7 +433,7 @@ mrb_check_type(mrb_state *mrb, mrb_value x, enum mrb_vtype t)
}
else if (mrb_special_const_p(x)) {
s = mrb_str_ptr(mrb_obj_as_string(mrb, x));
etype = s->buf;
etype = s->ptr;
}
else {
etype = mrb_obj_classname(mrb, x);
......@@ -471,8 +471,8 @@ mrb_any_to_s(mrb_state *mrb, mrb_value obj)
str = mrb_str_new(mrb, 0, len); /* 6:tags 16:addr */
s = mrb_str_ptr(str);
// snprintf(RSTRING(str)->ptr, len+1, "#<%s:0x%lx>", cname, obj);
sprintf(s->buf, "#<%s:0x%lx>", cname, (unsigned long)(obj.value.p));
s->len = strlen(s->buf);
sprintf(s->ptr, "#<%s:0x%lx>", cname, (unsigned long)(obj.value.p));
s->len = strlen(s->ptr);
return str;
}
......
......@@ -17,7 +17,7 @@ printstr(mrb_state *mrb, mrb_value obj)
if (mrb_type(obj) == MRB_TT_STRING) {
str = mrb_str_ptr(obj);
s = str->buf;
s = str->ptr;
len = str->len;
while (len--) {
putc(*s, stdout);
......
This diff is collapsed.
......@@ -331,11 +331,11 @@ sym_inspect(mrb_state *mrb, mrb_value sym)
name = mrb_sym2name_len(mrb, id, &len);
str = mrb_str_new(mrb, 0, len+1);
RSTRING(str)->buf[0] = ':';
memcpy(RSTRING(str)->buf+1, name, len);
RSTRING(str)->ptr[0] = ':';
memcpy(RSTRING(str)->ptr+1, name, len);
if (!symname_p(name) || strlen(name) != len) {
str = mrb_str_dump(mrb, str);
strncpy(RSTRING(str)->buf, ":\"", 2);
strncpy(RSTRING(str)->ptr, ":\"", 2);
}
return str;
}
......@@ -352,7 +352,7 @@ mrb_sym2name(mrb_state *mrb, mrb_sym sym)
}
else {
mrb_value str = mrb_str_dump(mrb, mrb_str_new(mrb, name, len));
return RSTRING(str)->buf;
return RSTRING(str)->ptr;
}
}
......
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