Yukihiro "Matz" Matsumoto
78c8b649e7
mruby-print/print.c: small refactoring.
...
Inline `printstr` function which is called from only one place.
2022-10-05 23:11:11 +09:00
Yukihiro "Matz" Matsumoto
ea1bc39b52
mruby-proc-ext/proc.c (mrb_proc_inspect): update the format.
2022-10-04 11:05:15 +09:00
Yukihiro "Matz" Matsumoto
e7e22ec6a8
mruby-method/method.c (method_to_s): add location information.
...
Test updated too.
2022-10-04 11:05:14 +09:00
Yukihiro "Matz" Matsumoto
751ac378bd
codegen.c: should not skip rhs array; fix #5797
...
When the value of multiple assignment taken, the rhs array needs to be
generated anyway.
2022-10-01 15:18:45 +09:00
Yukihiro "Matz" Matsumoto
db7d40be85
mruby-proc-ext/proc.c (mrb_proc_parameters): disclose unnamed arguments.
...
Unnamed arguments (*, **, &) should be disclosed in the parameter list.
The test is also updated.
2022-09-30 22:19:59 +09:00
Yukihiro "Matz" Matsumoto
7ced009d4c
mruby-proc-ext/proc.c (mrb_proc_parameters): unify conditions.
2022-09-30 22:19:58 +09:00
Yukihiro "Matz" Matsumoto
3d766aa1ef
mruby-proc-ext/proc.c (mrb_proc_parameters): count arguments first.
...
Instead of approximating using `irep->nlocals-1` (which should be bigger
than argument numbers).
2022-09-30 22:19:36 +09:00
Yukihiro "Matz" Matsumoto
3a2de4af00
mruby-proc-ext/proc.c (mrb_proc_parameters): skip empty block slot.
...
Unlike other formal arguments, a block argument has an empty slot even
when the block is not given.
2022-09-30 07:49:44 +09:00
Yukihiro "Matz" Matsumoto
7667b0fc04
mruby-proc-ext/proc.c (mrb_proc_parameters): reformat.
2022-09-30 07:43:57 +09:00
Yukihiro "Matz" Matsumoto
3c16423c0a
mruby-method/method.c (method_to_s): making it compatible with CRuby.
2022-09-29 11:00:49 +09:00
Yukihiro "Matz" Matsumoto
5e1c16653f
mruby-method/method.c (method_super_method): fixed module related bug.
...
When the method is defined in module, super_method started method
searching from wrong point. We needed to find ICLASS corresponding to the
module, then start searching super_method from the next ancestor.
2022-09-27 23:03:38 +09:00
Yukihiro "Matz" Matsumoto
0a0ab73e8d
mruby-class-ext: #subclasses should be a method of Class, not Module.
2022-09-27 23:03:23 +09:00
Yukihiro "Matz" Matsumoto
a04b09d535
Merge pull request #5796 from dearblue/bigint-readme
...
Small improves for `mrbgems/mruby-bigint/README.md` [ci skip]
2022-09-22 10:53:57 +09:00
dearblue
b7069dba41
Small improves for mrbgems/mruby-bigint/README.md [ci skip]
...
- Add a period at the end of the line because markdown will combine lines if there are no blank lines.
- Enable link to `README-fgmp.md`.
2022-09-21 22:50:47 +09:00
Yukihiro "Matz" Matsumoto
07470eb538
mruby-exit.c: make exit() to raise SystemExit exception.
...
Now it allows error handlers to work, unlike `exit!`.
2022-09-21 22:37:23 +09:00
Yukihiro "Matz" Matsumoto
11504318b8
string-ext/string.rb: String#prepend to take multiple arguments.
2022-09-20 18:31:04 +09:00
Yukihiro "Matz" Matsumoto
4cba1b49c0
string-ext/string.c: String#concat to take multiple arguments.
2022-09-20 18:26:23 +09:00
Yukihiro "Matz" Matsumoto
a4099ff776
enum-ext/enum.rb: add Enumerable#sum
2022-09-19 12:31:11 +09:00
Yukihiro "Matz" Matsumoto
9caa4d642c
errno.rb: fixed a typo.
2022-09-18 08:01:07 +09:00
Yukihiro "Matz" Matsumoto
3d125aeb89
errno.c (mrb_exxx_init): simplify the function.
...
Code duplication with mrb_sce_init has been unified.
2022-09-18 07:59:36 +09:00
Yukihiro "Matz" Matsumoto
db536da412
errno.c (mrb_sce_sys_fail): SystemCallError may be overridden; fix #5793
2022-09-18 00:07:28 +09:00
John Bampton
2990aaa343
pre-commit autoupdate, fix spelling, update codespell.txt
...
https://pre-commit.com/#pre-commit-autoupdate
2022-09-18 00:22:55 +10:00
dearblue
50ea98e76d
Retrieve the StandardError class from mrb_state
2022-09-17 22:03:52 +09:00
Yukihiro "Matz" Matsumoto
52b2e12f07
numeric_ext.c: implement Integer#digits method.
...
Which is added in Ruby 2.4.
2022-09-17 16:43:06 +09:00
Yukihiro "Matz" Matsumoto
b716bf005e
mruby-range-ext/range.c: use the reference from mrb structure.
...
Avoid `mrb_class_get()` if possible.
2022-09-12 10:29:45 +09:00
Yukihiro "Matz" Matsumoto
d72d26afcb
mruby-string-ext/string.c: use the reference from mrb structure.
2022-09-12 10:27:31 +09:00
Yukihiro "Matz" Matsumoto
3662d3d9da
fixup! numeric_ext.c: use the reference from mrb structure.
2022-09-12 10:27:30 +09:00
Yukihiro "Matz" Matsumoto
fc85523cf1
numeric_ext.c: use the reference from mrb structure.
2022-09-12 10:27:29 +09:00
Yukihiro "Matz" Matsumoto
f05574606e
mruby-numeric-ext: add ceildiv test with Float and Rational.
2022-09-12 10:27:29 +09:00
Yukihiro "Matz" Matsumoto
b6d7564846
numeric_ext.rb: add Integer#ceildiv.
2022-09-12 10:27:28 +09:00
Yukihiro "Matz" Matsumoto
b06fef65ea
mruby-exit.c: add reference to exit method.
...
Currently `exit` works as `exit!` (no handler). It should be fixed
soon.
2022-09-05 23:36:04 +09:00
Yukihiro "Matz" Matsumoto
d508c94f0e
mruby-exit.c: add exit! method.
2022-09-05 23:35:37 +09:00
Yukihiro "Matz" Matsumoto
bf16315b70
mruby-exit/exit.c: add fallback definition of constants.
...
- EXIT_SUCCESS
- EXIT_FAILURE
2022-09-05 07:30:12 +09:00
Yukihiro "Matz" Matsumoto
9f47f11abd
math.c: update prototype style.
2022-09-05 07:30:12 +09:00
dearblue
c123c49ac4
Improves ObjectSpace.count_objects
...
- Support for `MRB_TT_STRUCT`, `MRB_TT_BREAK` and `MRB_TT_BIGINT`.
- Performs symbol value embedding with `MRB_SYM()`.
2022-09-04 20:53:18 +09:00
Yukihiro "Matz" Matsumoto
4f0679bb86
pack.c (pack_unpack): small refactoring.
2022-08-31 23:29:12 +09:00
Yukihiro "Matz" Matsumoto
3643f067c2
proc.h: remove unused env flags.
...
- MRB_ENV_TOUCHED
- MRB_ENV_HEAPED
2022-08-31 07:27:14 +09:00
Yukihiro "Matz" Matsumoto
15e9b09bef
pack.c (hex2int): should return signed integer.
2022-08-30 18:08:05 +09:00
Yukihiro "Matz" Matsumoto
dfeda0acc8
random.c: remove Random::DEFAULT.
2022-08-28 08:01:59 +09:00
Yukihiro "Matz" Matsumoto
8c1b2ee0bb
numeric_ext.c (int_powm): avoid integer overflow by modulo first.
...
We do not fall back to big integer calculation unless absolutely necessary.
2022-08-27 22:18:38 +09:00
Yukihiro "Matz" Matsumoto
5b1e14b96b
numeric_ext.c (int_powm): better error message.
2022-08-26 14:27:54 +09:00
Yukihiro "Matz" Matsumoto
f5a3f4f2ea
bigint.c (mpz_powm): avoid stack allocations.
2022-08-26 14:27:54 +09:00
Yukihiro "Matz" Matsumoto
b158581118
bigint.c (udiv): xx%yy should have been xx when xx<yy.
2022-08-26 14:19:10 +09:00
Yukihiro "Matz" Matsumoto
4e0da4f0d8
bigint.c (mpz_init_set): fully initialize mpz_t first.
2022-08-26 14:18:30 +09:00
Yukihiro "Matz" Matsumoto
62c36c03b3
bigint.c (mpz_set_int): fixed a bug in integer size check.
2022-08-26 12:55:29 +09:00
Yukihiro "Matz" Matsumoto
6598732892
numeric_ext.c (int_powm): try bigint pow when overflow.
2022-08-26 12:37:54 +09:00
Yukihiro "Matz" Matsumoto
b4785044d5
bigint.c (mrb_bint_powm): fix a return value bug.
2022-08-26 12:13:24 +09:00
Yukihiro "Matz" Matsumoto
ef1974099d
bigint.c (mrb_bint_powm): check zero division first.
2022-08-26 12:10:22 +09:00
Yukihiro "Matz" Matsumoto
7c0f7e2665
parse.y: allow NUMPARAMs (e.g. _1) as hash keys; fix #5785
2022-08-23 18:36:26 +09:00
Yukihiro "Matz" Matsumoto
f587edd849
pack.c: need extra space for the terminal NULL.
2022-08-23 15:05:27 +09:00