Yukihiro "Matz" Matsumoto
f486069a94
mruby-dir/test: reformat
2022-12-20 21:56:52 +09:00
Yukihiro "Matz" Matsumoto
869a2778a9
mruby-dir/test: remove warnings from lacked assertions
2022-12-20 20:24:28 +09:00
Yukihiro "Matz" Matsumoto
fbf04c6ec3
mruby-dir/dir.rb: removed work around for old mruby bug
2022-12-20 20:13:04 +09:00
Yukihiro "Matz" Matsumoto
e6a2f0b98e
mruby-dir/dir.rb: reformat according to coding standard
2022-12-20 19:51:18 +09:00
Yukihiro "Matz" Matsumoto
d46bbb72ac
mrbgems/stdlib-io.gembox: add mruby-dir gem
2022-12-20 18:49:29 +09:00
Yukihiro "Matz" Matsumoto
277341f694
Add 'mrbgems/mruby-dir/' from commit '89dceefa1250fb1ae868d4cb52498e9e24293cd1'
...
git-subtree-dir: mrbgems/mruby-dir
git-subtree-mainline: f2d43069f0
git-subtree-split: 89dceefa12
2022-12-20 18:06:36 +09:00
Yukihiro "Matz" Matsumoto
f2d43069f0
mruby-socet: add socket constants
...
Introduced in Ruby3.2:
- SO_INCOMING_CPU
- SO_INCOMING_NAPI_ID
- SO_RTABLE
- SO_SETFIB
- SO_USER_COOKIE
- TCP_KEEPALIVE
- TCP_CONNECTION_INFO
2022-12-19 18:59:10 +09:00
Yukihiro "Matz" Matsumoto
f7a8a42521
mruby-compiler/parse.y: allow multiple anonymous splat in args rule
...
For example, this should be allowed:
```ruby
def f(*)
p(*,*)
end
```
2022-12-17 09:37:44 +09:00
Yukihiro "Matz" Matsumoto
d6dc9caa02
mruby-hash-ext/hash.rb: make transform_keys! to keep old keys
...
```ruby
h={1=>2,2=>3}
h.transform_keys!{_1.succ}
```
used to make `h` to `{2=>2}` (duplicated keys were squashed), but now
makes it `{2=>2,3=>3}`.
2022-12-14 07:39:10 +09:00
Yukihiro "Matz" Matsumoto
ba3541bbc4
mruby-set/set.rb (reset): add reset method defined in Ruby 2.5
2022-12-14 07:38:38 +09:00
Yukihiro "Matz" Matsumoto
ddefcea151
mruby-eval/eval.c (f_instance_eval): skip mrb_value to get singleton
...
Use mrb_singleton_class_ptr() instead of mrb_instance_class(), because
the former returns NULL, when the latter raises error for immediate
objects.
```
1.instance_eval <<END
def foo
:foo
end
END
```
2022-12-13 10:51:44 +09:00
Yukihiro "Matz" Matsumoto
38c50b3094
mruby-struct (struct_index): avoid direct array indexing
...
Caused crash probably due to the combination of C++ UB & optimizer.
2022-12-10 08:00:31 +09:00
Yukihiro "Matz" Matsumoto
990d41f9f7
mruby-class-ext: new method attached_object introduced in Ruby3.2
2022-12-09 17:30:17 +09:00
Yukihiro "Matz" Matsumoto
a7e304a51c
mruby-struct (struct_index): unify indexing access code
2022-12-08 08:01:53 +09:00
Yukihiro "Matz" Matsumoto
de0ed25fbf
mruby-struct (struct_corrupted): unify error raising code
2022-12-07 17:07:33 +09:00
Yukihiro "Matz" Matsumoto
0c1d6c5d1b
Merge pull request #5866 from jbampton/md-fix-c-code-block
...
docs: fix start of `C` code block
2022-12-07 08:01:13 +09:00
Yukihiro "Matz" Matsumoto
672495555b
mruby-data (mrb_data_init_copy): use data_corrupted() for errors
2022-12-07 07:49:19 +09:00
John Bampton
8eee3ce150
docs: fix start of C code block
2022-12-06 21:48:28 +10:00
Yukihiro "Matz" Matsumoto
a7232ecf8d
mruby-sprintf (mrb_str_format): fixed integer size confusion
...
Declared as int, checked as mrb_int.
2022-12-06 08:31:30 +09:00
Yukihiro "Matz" Matsumoto
841bf6a270
mruby-data: update a comment (there's no Data.new) [ci skip]
2022-12-05 10:49:40 +09:00
Yukihiro "Matz" Matsumoto
0d261aff6b
mruby-data: freeze Data object after initialize
2022-12-04 22:45:36 +09:00
Yukihiro "Matz" Matsumoto
9992de5a4f
Rename MRB_TT_DATA to MRB_TT_CDATA
...
`TT_DATA` is too confusing with `Data` objects (which is immutable
Struct like objects introduced in Ruby 3.2).
2022-12-04 22:45:36 +09:00
Yukihiro "Matz" Matsumoto
0ef4796dfb
mruby-data: improve comment description
2022-12-04 22:45:35 +09:00
Yukihiro "Matz" Matsumoto
951caa8f42
mruby-data: rename some internal functions and a macro
2022-12-04 22:45:35 +09:00
dearblue
392033fb6b
Move mruby-errno to stdlib-io.gembox
...
This is because GEMs that use errno are currently limited to `mruby-io` and `mruby-socket`.
2022-12-04 18:33:12 +09:00
Yukihiro "Matz" Matsumoto
5f3aed7413
mruby-data (mrb_data_new): Data#new to accept keyword arguments
2022-12-01 15:38:06 +09:00
Yukihiro "Matz" Matsumoto
a40fdfde5c
mruby-data: cosmetic changes regarding for loop variables
2022-11-30 21:51:52 +09:00
Yukihiro "Matz" Matsumoto
c7f1195ccb
mruby-random: fix size of kw symbol arrays
2022-11-30 21:50:08 +09:00
Yukihiro "Matz" Matsumoto
138adbe282
mruby-data (mrb_data_initialize): update argument error conditions
...
- raise ArgumentError if arguments size differs from data size.
Previously it accepted smaller argument size.
- the message is updated to "wrong number of arguments". It's not
"struct" any longer.
2022-11-30 21:47:31 +09:00
Yukihiro "Matz" Matsumoto
fce2c5131f
mruby-data: new gem for Data class introduced in Ruby 3.2
2022-11-29 15:58:05 +09:00
Yukihiro "Matz" Matsumoto
3fa029b079
mruby-io (mrb_fd_cloexec): instead of assertion call mrb_sys_fail()
...
Should provide system call failure information to the user.
2022-11-29 08:16:22 +09:00
Yukihiro "Matz" Matsumoto
551d603d9c
mruby-sprintf: remove unnecessary format specifier
2022-11-26 23:22:50 +09:00
Yukihiro "Matz" Matsumoto
16ed467266
mruby-struct: avoid using mrb_bug(); ref #5852
...
Use mrb_assert() instead.
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
855e63e17c
parse.y: avoid using mrb_bug(); ref #5852
2022-11-25 16:17:29 +09:00
Yukihiro "Matz" Matsumoto
c39ee489e1
Remove non formatting fprintf().
2022-11-25 16:17:29 +09:00
dearblue
f0a65ec3c2
Avoid abort() when FiberError occurs in mrb_fiber_resume()
...
However, this may not be the case depending on where the `FiberError` raises.
2022-11-20 20:32:44 +09:00
Yukihiro "Matz" Matsumoto
9c5dc42e59
small cosmetic changes.
...
I prefer `i++` style unless absolutely necessary.
This commit is an addition to 41e4148.
2022-11-19 17:11:56 +09:00
Yukihiro "Matz" Matsumoto
89a34e1b7e
Revert "error.c (mrb_sys_fail): errno argument removed from _sys_fail."
...
Intermediate function calls may update `errno`.
This reverts commit a099ca44f4 .
2022-11-19 17:11:56 +09:00
dearblue
6fed73445e
Updates documentation for mrb_fiber_resume() and mrb_fiber_yield()
...
- Added note on `mrb_fiber_resume()` and `mrb_fiber_yield()`.
Removed comments from C files that were not documented by yard and doxygen instead.
- Leads to use of `mrb_fiber_resume()` instead of `Fiber#resume` in C.
- Leads to use of `mrb_fiber_yield()` instead of `Fiber.yield` in C.
2022-11-19 16:59:28 +09:00
Yukihiro "Matz" Matsumoto
a099ca44f4
error.c (mrb_sys_fail): errno argument removed from _sys_fail.
...
As a side effect, `errno.h` dependency removed from `error.c`.
2022-11-15 13:27:32 +09:00
Yukihiro "Matz" Matsumoto
71a1d0ad26
mruby-sprintf: fix a debug error message (remove additional "1").
2022-11-15 13:27:31 +09:00
John Bampton
4903aa2be9
docs: standardize Markdown headings
2022-11-13 16:32:38 +10:00
Yukihiro "Matz" Matsumoto
6bcbfed8bb
mruby-sprintf/sprintf.c: check integer overflow before casting.
2022-11-11 08:08:07 +09:00
Yukihiro "Matz" Matsumoto
9fcfd01f20
mruby-pack/pack.c (read_tmpl): check integer overflow before casting.
2022-11-10 22:21:12 +09:00
Yukihiro "Matz" Matsumoto
4a888a34bb
readfloat.c (mrb_read_float): a new function.
...
We no longer use `mrb_float_read()` that depends on `errno`.
2022-11-07 16:09:31 +09:00
Yukihiro "Matz" Matsumoto
4e9773ae3d
readint.c (mrb_int_read): new function.
...
We no longer use `mrb_read_int` which is kinda compatible with `strtol`.
2022-11-07 16:09:31 +09:00
Yukihiro "Matz" Matsumoto
4f385f119c
parse.y (call_with_block): a->cdr may be NULL.
2022-11-04 14:05:52 +09:00
Yukihiro "Matz" Matsumoto
c6b7029cdc
mruby-sprintf: fix int and mrb_int mixtures.
2022-11-04 13:11:36 +09:00
Yukihiro "Matz" Matsumoto
7e7cc425d4
bingint.c: add cast to silence some warnings (on VC).
2022-11-04 13:10:51 +09:00
Yukihiro "Matz" Matsumoto
5617de0071
mruby-method/method.c (method_eql): do not check _klass for equality.
2022-11-03 23:38:27 +09:00