From 3d46f1b62092a064d740c66d5395bcf89c899ee9 Mon Sep 17 00:00:00 2001 From: Hiroshi Mimaki Date: Fri, 10 Apr 2020 13:05:23 +0900 Subject: Update version to `2.1.1`. (mruby 2.1.1 RC) --- include/mruby.h | 2 +- include/mruby/version.h | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'include') diff --git a/include/mruby.h b/include/mruby.h index 7419618fd..e96a4bfd3 100644 --- a/include/mruby.h +++ b/include/mruby.h @@ -1,7 +1,7 @@ /* ** mruby - An embeddable Ruby implementation ** -** Copyright (c) mruby developers 2010-2019 +** Copyright (c) mruby developers 2010-2020 ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the diff --git a/include/mruby/version.h b/include/mruby/version.h index f4ef21021..c43c51d85 100644 --- a/include/mruby/version.h +++ b/include/mruby/version.h @@ -47,7 +47,7 @@ MRB_BEGIN_DECL /* * Tiny release version number. */ -#define MRUBY_RELEASE_TEENY 0 +#define MRUBY_RELEASE_TEENY 1 /* * The mruby version. @@ -62,17 +62,17 @@ MRB_BEGIN_DECL /* * Release year. */ -#define MRUBY_RELEASE_YEAR 2019 +#define MRUBY_RELEASE_YEAR 2020 /* * Release month. */ -#define MRUBY_RELEASE_MONTH 11 +#define MRUBY_RELEASE_MONTH 4 /* * Release day. */ -#define MRUBY_RELEASE_DAY 19 +#define MRUBY_RELEASE_DAY 20 /* * Release date as a string. -- cgit v1.2.3 From f5ee7df7f34774e398816cac6d7a9f093907b430 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Tue, 28 Apr 2020 13:16:27 +0900 Subject: Rename (and expose) UTF-8 related functions; ref #4712 - mrb_utf8len() - returns the size of a UTF-8 char (in bytes) - mrb_utf8_strlen() - returns the length of a UTF-8 string (in char) --- include/mruby/string.h | 3 ++- mrbgems/mruby-symbol-ext/src/symbol.c | 2 +- src/string.c | 26 +++++++++++++------------- 3 files changed, 16 insertions(+), 15 deletions(-) (limited to 'include') diff --git a/include/mruby/string.h b/include/mruby/string.h index a518d9147..93c94ef5d 100644 --- a/include/mruby/string.h +++ b/include/mruby/string.h @@ -465,7 +465,8 @@ mrb_bool mrb_str_beg_len(mrb_int str_len, mrb_int *begp, mrb_int *lenp); mrb_value mrb_str_byte_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len); #ifdef MRB_UTF8_STRING -mrb_int mrb_utf8_len(const char *str, mrb_int byte_len); +mrb_int mrb_utf8len(const char *str, const char *end); +mrb_int mrb_utf8_strlen(const char *str, mrb_int byte_len); #endif MRB_END_DECL diff --git a/mrbgems/mruby-symbol-ext/src/symbol.c b/mrbgems/mruby-symbol-ext/src/symbol.c index 87f8381b1..ad922ad2f 100644 --- a/mrbgems/mruby-symbol-ext/src/symbol.c +++ b/mrbgems/mruby-symbol-ext/src/symbol.c @@ -47,7 +47,7 @@ mrb_sym_length(mrb_state *mrb, mrb_value self) #ifdef MRB_UTF8_STRING mrb_int byte_len; const char *name = mrb_sym_name_len(mrb, mrb_symbol(self), &byte_len); - len = mrb_utf8_len(name, byte_len); + len = mrb_utf8_strlen(name, byte_len); #else mrb_sym_name_len(mrb, mrb_symbol(self), &len); #endif diff --git a/src/string.c b/src/string.c index 2ef1ad95a..458c511dc 100644 --- a/src/string.c +++ b/src/string.c @@ -301,8 +301,8 @@ static const char utf8len_codepage[256] = 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,1,1,1,1,1,1,1,1,1,1,1, }; -static mrb_int -utf8len(const char* p, const char* e) +mrb_int +mrb_utf8len(const char* p, const char* e) { mrb_int len; mrb_int i; @@ -318,14 +318,14 @@ utf8len(const char* p, const char* e) } mrb_int -mrb_utf8_len(const char *str, mrb_int byte_len) +mrb_utf8_strlen(const char *str, mrb_int byte_len) { mrb_int total = 0; const char *p = str; const char *e = p + byte_len; while (p < e) { - p += utf8len(p, e); + p += mrb_utf8len(p, e); total++; } return total; @@ -341,7 +341,7 @@ utf8_strlen(mrb_value str) return byte_len; } else { - mrb_int utf8_len = mrb_utf8_len(RSTR_PTR(s), byte_len); + mrb_int utf8_len = mrb_utf8_strlen(RSTR_PTR(s), byte_len); if (byte_len == utf8_len) RSTR_SET_ASCII_FLAG(s); return utf8_len; } @@ -362,7 +362,7 @@ chars2bytes(mrb_value s, mrb_int off, mrb_int idx) const char *e = RSTRING_END(s); for (b=i=0; p beg) { p --; if ((*p & 0xc0) != 0x80) { - int clen = utf8len(p, end); + int clen = mrb_utf8len(p, end); if (clen > ptr - p) return p; break; } @@ -466,7 +466,7 @@ str_index_str_by_char_search(mrb_state *mrb, const char *p, const char *pend, co if (pivot >= pend || pivot < p /* overflowed */) { return -1; } do { - p += utf8len(p, pend); + p += mrb_utf8len(p, pend); off ++; } while (p < pivot); } @@ -485,7 +485,7 @@ str_index_str_by_char(mrb_state *mrb, mrb_value str, mrb_value sub, mrb_int pos) for (; pos > 0; pos --) { if (pend - p < 1) { return -1; } - p += utf8len(p, pend); + p += mrb_utf8len(p, pend); } if (slen < 1) { return off; } @@ -1362,7 +1362,7 @@ str_escape(mrb_state *mrb, mrb_value str, mrb_bool inspect) unsigned char c, cc; #ifdef MRB_UTF8_STRING if (inspect) { - mrb_int clen = utf8len(p, pend); + mrb_int clen = mrb_utf8len(p, pend); if (clen > 1) { mrb_int i; @@ -1665,7 +1665,7 @@ mrb_str_chop_bang(mrb_state *mrb, mrb_value str) const char* t = RSTR_PTR(s), *p = t; const char* e = p + RSTR_LEN(s); while (p=e) break; p += clen; } @@ -2037,7 +2037,7 @@ mrb_str_reverse_bang(mrb_state *mrb, mrb_value str) p = RSTR_PTR(s); e = p + RSTR_LEN(s); while (p Date: Thu, 4 Jun 2020 17:20:46 +0900 Subject: Update release date. --- doc/guides/debugger.md | 2 +- doc/limitations.md | 18 +++++++++--------- include/mruby/version.h | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/doc/guides/debugger.md b/doc/guides/debugger.md index 0b0c33380..74f9f6115 100644 --- a/doc/guides/debugger.md +++ b/doc/guides/debugger.md @@ -38,7 +38,7 @@ To confirm mrdb was installed properly, run mrdb with the `--version` option: ```bash $ mrdb --version -mruby 2.1.1 (2020-04-20) +mruby 2.1.1 (2020-06-04) ``` ## 2.2 Basic Operation diff --git a/doc/limitations.md b/doc/limitations.md index 4b4f1b9f5..c3c027cb9 100644 --- a/doc/limitations.md +++ b/doc/limitations.md @@ -38,7 +38,7 @@ puts [1,2,3] 3 ``` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] ``` [1, 2, 3] @@ -61,7 +61,7 @@ end `ZeroDivisionError` is raised. -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] No exception is raised. @@ -89,7 +89,7 @@ p Liste.new "foobar" ` [] ` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] `ArgumentError` is raised. @@ -119,7 +119,7 @@ false true ``` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] ``` true @@ -156,7 +156,7 @@ p 'ok' ok ``` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] ``` test.rb:8: undefined method 'test_func' (NoMethodError) @@ -178,7 +178,7 @@ defined?(Foo) nil ``` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] `NameError` is raised. @@ -195,7 +195,7 @@ alias $a $__a__ ` nil ` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] Syntax error @@ -217,7 +217,7 @@ end `ArgumentError` is raised. The re-defined `+` operator does not accept any arguments. -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] ` 'ab' ` Behavior of the operator wasn't changed. @@ -233,7 +233,7 @@ $ ruby -e 'puts Proc.new {}.binding' # ``` -#### mruby [2.1.1 (2020-04-20)] +#### mruby [2.1.1 (2020-06-04)] ``` $ ./bin/mruby -e 'puts Proc.new {}.binding' diff --git a/include/mruby/version.h b/include/mruby/version.h index c43c51d85..64664b700 100644 --- a/include/mruby/version.h +++ b/include/mruby/version.h @@ -67,12 +67,12 @@ MRB_BEGIN_DECL /* * Release month. */ -#define MRUBY_RELEASE_MONTH 4 +#define MRUBY_RELEASE_MONTH 6 /* * Release day. */ -#define MRUBY_RELEASE_DAY 20 +#define MRUBY_RELEASE_DAY 4 /* * Release date as a string. -- cgit v1.2.3