nobu
5bf72d1fa6
* transcode.c (transcode_loop): call default handler of the given
...
hash, method, proc or [] method as fallback. [ruby-dev:42692]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-07 13:05:26 +00:00
nobu
2d4b0d6261
* hash.c (rb_hash_update_by): new API for Hash#update.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-04 02:21:53 +00:00
shyouhei
51da92ea12
* vm.c (ruby_vm_at_exit): new API. This enables extension libs to
...
hook a VM termination. Right now, because the VM we have is
process global, most extensions do not deallocate resources and
leave them to Operating System's reaping userland processes. But
in a future we plan to have multiple VMs to run simultaneously in
a single process (MVM project). At that stage we can no longer
rely on OSes and have to manage every resources to be reclaimed
properly. So it is. For a forward-compatibility reason this API
is introduced now, encouraging you to be as gentle as you can for
your resources; that is, tidy up your room.
* include/ruby/vm.h: ditto.
* vm_core.h (rb_vm_struct): new field.
* vm.c (vm_init2): initialize above new field.
* eval.c (ruby_cleanup): trigger those hooks.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-02 11:06:32 +00:00
usa
dd4c394564
* include/ruby/win32.h (rb_w32_write_console): wrong prototype.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-29 05:20:08 +00:00
nobu
c6e4767068
* include/ruby/io.h (rb_io_buffer_t): extract from rb_io_t.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-18 13:58:47 +00:00
nobu
8a7aad9952
* fix type warnings.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:30:39 +00:00
nobu
fe9f1e8cf8
* include/ruby/ruby.h (PRI_LL_PREFIX): format type specifier for
...
LONG_LONG may vary on platforms.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 11:49:54 +00:00
nobu
b3c7867df7
* error.c (rb_syserr_new): new function to make SystemCallError
...
instance without errno. [EXPERIMENTAL]
* error.c (rb_syserr_fail, rb_mod_syserr_fail): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-08 22:30:20 +00:00
naruse
64bd18c588
* include/ruby/oniguruma.h (ONIGENC_CTYPE_SPECIAL_MASK):
...
change mask from 128 to 256. [ruby-core:32931]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-28 11:07:25 +00:00
usa
6ef1aa7964
* include/ruby/ruby.h (NUM2LONG_internal): add cast to get rid of a
...
non GCC compiler warning. this is intentional type conversion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-27 03:00:26 +00:00
mame
2285a8d813
* class.c, gc.c, object.c, variable.c, vm_insnhelper.c,
...
include/ruby/ruby.h: separate RCLASS_CONST_TBL from RCLASS_IV_TBL.
RCLASS_IV_TBL has contained not only instance variable table but
also constant table. Now the two table are separated to
RCLASS_CONST_TBL and RCLASS_IV_TBL. This is a preparation for
private constant (see [ruby-dev:39685][ruby-core:32698]).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 17:27:21 +00:00
nobu
58d3597e74
* include/ruby/intern.h (rb_check_frozen): optimize.
...
[ruby-core:32878]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-24 08:05:55 +00:00
nobu
8a4966d133
* include/ruby/ruby.h (VALUE): prefer long over uintptr_t,
...
FIX2LONG expects VALUE to be long at least.
* include/ruby/ruby.h (FIX2LONG): parenthesize the argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-15 13:47:38 +00:00
nobu
5ba5d4c889
* include/ruby/ruby.h (ruby_executable_node): missing prototype.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-13 01:52:54 +00:00
nobu
cea3919ae6
* configure.in (RUBY_CHECK_PRINTF_PREFIX): check for printf format
...
specifier if possible.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 15:03:51 +00:00
naruse
e960fffda1
* numeric.c (rb_enc_uint_chr): split from int_chr.
...
* numeric.c (int_chr): use rb_enc_uint_chr.
* include/ruby/encoding.h (rb_enc_uint_chr): added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 06:18:08 +00:00
nobu
6329215dbf
* include/ruby/intern.h (rb_set_kcode, rb_get_kcode): removed
...
zombie prototype declarations. a patch from Eric Hodel
at [ruby-core:32305].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-11 03:32:08 +00:00
naruse
493f721854
* random.c (rb_genrand_ulong_limited): renamed from
...
rb_rand_internal and now this is public API.
* include/ruby/ruby.h (rb_genrand_ulong_limited): added.
* bignum.c (big_sparse_p): use rb_genrand_ulong_limited.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-10 05:44:54 +00:00
nobu
89339af9c1
* include/ruby/version.h (RUBY_API_VERSION_*): renamed and moved
...
from version.h. [ruby-dev:42103]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-23 21:08:19 +00:00
akr
b25bda4547
* include/ruby/ruby.h (UINT2NUM): fix ifdef condition for LLP64.
...
reported by Daniel Gutmanas. [ruby-core:31778]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-22 00:10:06 +00:00
nobu
f214490d90
* thread.c (rb_gc_mark_threads): deprecated.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-14 12:04:31 +00:00
nobu
dccf9e0c45
* configure.in, include/ruby/defines.h (RUBY_FUNC_EXPORTED): macro
...
to declare exported function.
* array.c (rb_ary_memsize), string.c (rb_str_memsize),
variable.c (rb_objspace_data_type_memsize): used in
objspace. [ruby-dev:42022]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-14 06:33:06 +00:00
nobu
92cb7d0ad4
* include/ruby/intern.h (rb_time_interval): used in io/wait.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-14 04:23:31 +00:00
nobu
3bf1afbdd8
* include/ruby/intern.h (rb_make_backtrace, rb_make_exception):
...
used in ripper.
* node.h (rb_parser_{malloc,realloc,calloc,free}): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-14 04:20:59 +00:00
nobu
2b1f8574c7
* include/ruby/encoding.h (rb_char_to_option_kcode): used in
...
ripper.
* node.h (rb_reserved_word): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-11 20:58:11 +00:00
nobu
574cadc970
* include/ruby/missing.h, include/ruby/ruby.h (namespace ruby):
...
get rid of name clash on C++.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 23:55:49 +00:00
akr
d82dd262d0
* include/ruby/subst.h (snprintf): redefinition moved from ruby.h.
...
(vsnprintf): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 22:19:17 +00:00
akr
bb0ef922db
* include/ruby/subst.h: new file for substitute standard functions..
...
* include/ruby/missing.h: don't substitute "close", etc. here.
* include/ruby/ruby.h: include ruby/subst.h at last.
This prevents substituting "close" in unitstd.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 15:44:27 +00:00
nobu
f6404fa6d5
* include/ruby/missing.h: moved BROKEN_CLOSE replacements from
...
include/ruby/ruby.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 08:49:18 +00:00
nobu
b80d5f14df
* hash.c (rb_check_hash_type): added.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-03 12:01:13 +00:00
nobu
933e5e0911
* include/ruby/win32.h: latest x86_64 mingw defines stati64.
...
[ruby-core:27516]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-01 00:12:51 +00:00
nobu
7ae7ac4aba
* util.c (ruby_add_suffix): fixed a bug returning uninitialized
...
value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-29 22:59:54 +00:00
usa
97bc1a122b
* win32/Makefile.sub (config.h): VC6 or later have stddef.h.
...
* include/ruby/missing.h: need to include stddef.h for size_t.
* include/ruby/missing.h: shouldn't declare as dllimport when building
ruby itself (for Windows).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-28 10:39:33 +00:00
nobu
58f1d31a1d
* defines.h, intern.h, missing.h, ruby.h, st.h, util.h: include
...
config.h and defines.h for autoconf macros.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-27 09:33:55 +00:00
usa
705586b1a1
* include/ruby/missing.h: revert a part of r28727. config.h is expected
...
to include only once, before including defines.h.
including it here breaks some macro definitions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-26 05:10:25 +00:00
naruse
201d99cc5f
* configure.in: define BROKEN_CLOSE on FreeBSD.
...
This fixes build failure on MSVC. [ruby-core:31481]
* include/ruby/ruby.h, include/ruby/missing.h:
use BROKEN_CLOSE for replacing close(2).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-26 03:05:25 +00:00
nobu
85bf9bede4
* configure.in (XCFLAGS): reverted mistakenly removed option.
...
[ruby-dev:41872]
* include/ruby/missing.h: needs ruby/config.h.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-23 00:00:12 +00:00
naruse
24b17a2e87
* include/ruby/missing.h: add prototype for ruby_close().
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-22 05:41:54 +00:00
nobu
062b4d6752
* include/ruby/{intern,io}.h: add missing prototypes.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-22 03:02:40 +00:00
nobu
0bd71ff354
* configure.in (XCFLAGS): use -fvisibility=hidden if possible.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-21 21:38:25 +00:00
nobu
06e935a126
* include/ruby/ruby.h (RSTRING_GETMEM): new macro to get ptr and
...
len at once.
* string.c (rb_str_cmp, str_eql, rb_str_eql): trivial improvements.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-20 09:39:22 +00:00
nobu
cc6294a73a
* include/ruby/ruby.h (rb_data_type_t): add new feature macros.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-18 20:46:13 +00:00
nobu
25b9eb5e57
* include/ruby/ruby.h (rb_data_type_t): restructured. [ruby-dev:41862]
...
add parent member.
* error.c (rb_typeddata_inherited_p): new function.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-18 07:31:54 +00:00
nobu
c04d79f867
* thread.c (rb_thread_wakeup_alive): split from rb_thread_wakeup.
...
merged from r13476. c.f. [ruby-core:31320]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-17 04:04:51 +00:00
mrkn
9d64fe7ed2
* include/ruby/ruby.h (rb_cRandom): added.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-11 10:05:27 +00:00
naruse
8ff0574198
* missing/close.c: ignore ECONNRESET.
...
FreeBSD wrongly sets ECONNRESET on close(2) and
it causes false-negative exceptions. [ruby-dev:41778]
* configure.in: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-07 01:29:22 +00:00
nobu
a67f1a9534
* include/ruby/io.h, io.c: reverted r21709.
...
* ruby.c (load_file_internal): nothing to read if EOF reached
while reading shebang. [ruby-core:30910]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-27 14:31:19 +00:00
tarui
12c2e07a3d
* include/ruby/ruby.h (static inline rb_gc_guarded_ptr): prevent
...
RB_GC_GUARD_PTR being removed by optimization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-24 16:11:05 +00:00
akr
b04fa7b8e1
* include/ruby/missing.h (isnan): fix compilation error on OpenBSD.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-11 14:00:35 +00:00
naruse
f39ad4cab2
* include/ruby/encoding.h (rb_filesystem_encindex): defined.
...
* include/ruby/encoding.h (rb_locale_encindex): ditto.
* encoding.c (rb_filesystem_encindex): remove static.
* encoding.c (rb_locale_encindex): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-27 14:47:16 +00:00