summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2008-08-19* include/ruby/io.h (FMODE_TRUNC): value changed because 0x100 is usedakr
as FMODE_NOREVLOOKUP in socket.c git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-19* include/ruby/io.h (FMODE_TRUNC): new constant.akr
* io.c (rb_io_mode_flags): set FMODE_TRUNC for "w". (rb_io_modenum_flags): set FMODE_TRUNC for O_TRUNC. (rb_io_flags_modenum): new function. (rb_io_mode_modenum): just use rb_io_mode_flags and rb_io_flags_modenum. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18713 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-19* include/ruby/io.h (rb_fopen): declaration removed.akr
* io.c (rb_fopen): unused function removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-19* include/ruby/io.h (FMODE_READWRITE): define asakr
FMODE_READABLE|FMODE_WRITABLE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-19* include/ruby/io.h (FMODE_*): sorted and describe the values inakr
hexadecimal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-18* io.c (make_writeconv): if enc and enc2 is set, convertakr
string.encoding to enc2. * include/ruby/io.h: comment changed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-18* include/ruby/io.h (rb_io_t): new fields: writeconv,akr
writeconv_stateless and writeconv_initialized. (MakeOpenFile): initialize them. * include/ruby/encoding.h (rb_econv_stateless_encoding): declared. (rb_econv_string): declared. * io.c (make_writeconv): new function. (io_fwrite): use econv. (make_readconv): fix error message. (finish_writeconv): new function. (fptr_finalize): call finish_writeconv. (clear_writeconv): new function. (clear_codeconv): new function to call both clear_readconv and clear_writeconv. (rb_io_fptr_finalize): call clear_codeconv instead of clear_readconv. (mode_enc): ditto. (io_set_encoding): ditto. (argf_next_argv): ditto. (io_encoding_set): ditto. * gc.c (gc_mark_children): mark writeconv_stateless in T_FILE. * transcode.c (stateless_encoding_i): new function. (rb_econv_stateless_encoding): ditto. (rb_econv_string): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-18update comment.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-17* lib/mkmf.rb (init_mkmf): add include/ruby/backward to $INCFLAGS.nobu
* include/ruby/backward/{st,util}.h: added for backward compatibility. [ruby-dev:35811] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-17* include/ruby/encoding.h (rb_econv_putbackable): declared.akr
(rb_econv_putback): ditto. * transcode.c (rb_econv_putbackable): implemented. (rb_econv_putback): ditto. * io.c (io_getc): put back bytes if possible. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/io.h (rb_io_t): new fields: readconv, crbuf, crbuf_off,akr
crbuf_len, crbuf_capa. (MakeOpenFile): initialize them. * io.c (io_shift_crbuf): new function. (io_getc): use econv. (rb_io_fptr_finalize): finalize readconv and crbuf. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/encoding.h (rb_econv_check_error): declared.akr
* transcode.c (make_econv_exception): new function. (transcode_loop): use make_econv_exception. (rb_econv_check_error): defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/encoding.h (rb_econv_elem_t): fields removed: from andakr
to. (rb_econv_t): new fields: source_encoding_name and destination_encoding_name. * transcode.c (rb_econv_open_by_transcoder_entries): initialize the new fields. (rb_econv_open): set up the new fields. (econv_inspect): use the new fields. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/encoding.h (rb_econv_t): add fields: in_buf_start,akr
in_data_start, in_data_end, in_buf_end and last_trans_index. (rb_econv_output): removed. (rb_econv_insert_output): declared. (rb_econv_encoding_to_insert_output): declared. * enc/trans/newline.trans (rb_universal_newline): stateful_type changed. * transcode.c (transcode_restartable0): initialize inchar_start, tc->recognized_len and next_table at beginning of the loop. (rb_econv_open_by_transcoder_entries): initialize new fields. (rb_econv_open): setup last_trans_index. (trans_sweep): last out_buf_start can be non-NULL now. (rb_econv_convert): check last out_buf_start and in_buf_start at first. (rb_econv_output_with_destination_encoding): removed. (econv_just_convert): removed. (rb_econv_output): removed. (econv_primitive_output): method removed. (rb_econv_encoding_to_insert_output): new function. (allocate_converted_string): new function. (rb_econv_insert_output): new function. (econv_primitive_insert_output): new method. (output_replacement_character): use rb_econv_insert_output. unused arguments removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/ruby.h (rb_intern_const): tiny optimization.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-16* include/ruby/ruby.h: commit miss.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-15* include/ruby/ruby.h (SSIZET2NUM, NUM2SSIZET, SSIZE_MAX, SSIZE_MIN):nobu
macros for ssize_t. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-15* include/ruby/encoding.h (rb_econv_output): add str_encodingakr
argument. * transcode.c (get_replacement_character): add repl_enc_ptr argument. (rb_econv_output_with_destination_encoding): renamed from rb_econv_output and make it static. (rb_econv_output): convert str and call rb_econv_output_with_destination_encoding. (output_replacement_character): follow above interface change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-15* include/ruby/encoding.h (rb_econv_t): add error_tc in last_error.akr
* transcode.c (rb_econv_convert): fill error_tc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-15* include/ruby/encoding.h (rb_econv_t): new field: last_error.akr
* transcode.c (rb_trans_conv): new argument: result_position_ptr. (rb_econv_convert): fill last_error. (econv_result_to_symbol): extracted from econv_primitive_convert. (econv_primitive_errinfo): new method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* include/ruby/encoding.h (rb_econv_output): declared.akr
* transcode_data.h (rb_transcoder): add resetsize_func field. * enc/trans/iso2022.trans (iso2022jp_reset_sequence_size): defined. (rb_EUC_JP_to_ISO_2022_JP): provede resetsize_func. * tool/transcode-tblgen.rb: set NULL for resetsize_func. * transcode.c (rb_econv_output): new function for inserting output. (output_replacement_character): use rb_econv_output. (transcode_loop): check return value of output_replacement_character. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* include/ruby/encoding.h (ECONV_UNIVERSAL_NEWLINE_DECODER): defined.akr
(ECONV_CRLF_NEWLINE_ENCODER): ditto. (ECONV_CR_NEWLINE_ENCODER): ditto. (ECONV_PARTIAL_INPUT): ditto. (ECONV_OUTPUT_FOLLOWED_BY_INPUT): ditto. * transcode.c: use ECONV_* defined as above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* include/ruby/encoding.h (rb_econv_result_t): moved fromakr
transcode_data.h. (rb_econv_elem_t): ditto. (rb_econv_t): ditto. source_encoding and destination_encoding field is added. (rb_econv_open): declared. (rb_econv_convert): ditto. (rb_econv_close): ditto. * transcode.c (rb_econv_open_by_transcoder_entries): initialize source_encoding and destination_encoding field as NULL. (rb_econv_open): make it external linkage. (rb_econv_close): ditto. (rb_econv_convert): ditto. renamed from rb_econv_conv. (make_encoding): new function. (econv_init): use make_encoding and store rb_encoding* in rb_econv_t. (econv_source_encoding): new method Encoding::Converter#source_encoding. (econv_destination_encoding): new method Encoding::Converter#destination_encoding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* include/ruby/encoding.h (rb_enc_ispunct): added.nobu
* common.mk (COMMONOBJS), inits.c (rb_call_inits): id.c is now included from parse.c. * id.c (Init_id), id.h (ruby_method_ids): added IDs used by VM. * parse.y (global_symbols): added rooms for VM IDs. * parse.y (rb_intern3, rb_id2str): single puctuation symbol is now same as char code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* include/ruby/defines.h (RUBY_ALIAS_FUNCTION): fallback definition.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13* thread.c (rb_thread_check_ints): added. please note thatko1
this function may cause ruby's thread switching. * include/ruby/intern.h: ditto. * regint.h: use rb_thread_check_ints() instead of RUBY_CHECK_INTS() directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13* object.c (rb_obj_untrusted): new method Object#untrusted?.shugo
(rb_obj_untrust): new method Object#untrust. (rb_obj_trust): new method Object#trust. * array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c, string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c, ruby.c, marshal.c: fixes for Object#untrusted?. * test/ruby/test_module.rb, test/ruby/test_array.rb, test/ruby/test_object.rb, test/ruby/test_string.rb, test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for Object#untrusted?. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12* error.c (rb_eEncCompatError): add Exception.naruse
* include/ruby/ruby.h: ditto. * encoding.c (rb_enc_check): use rb_eEncCompatError. * string.c (rb_enc_cr_str_buf_cat): ditto. * string.c (rb_str_sub_bang): ditto. * string.c (rb_str_hex): ditto. * string.c (rb_str_oct): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12* string.c (rb_str_drop_bytes): new function to drop first bytes.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18541 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12* string.c (rb_str_drop): new function to drop first bytes.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12* include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,nobu
rb_usascii_str_new2): use with-length versions with strlen to optimize strlen, if optimized. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18537 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-09* gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.nobu
[ruby-core:18207] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-07add a comment.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-06* eval_intern.h: Add support to Haiku. see [ruby-core:18110]naruse
* include/ruby/defines.h: ditto. * configure.in: ditto. * thread_pthread.c: ditto. * io.c: ditto. * lib/mkmf.rb: ditto. * ext/socket/getaddrinfo.c: ditto. * ext/socket/extconf.rb: ditto. * ext/socket/socket.c: ditto. * ext/socket/addrinfo.h: ditto. * ext/socket/getnameinfo.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-05* include/ruby/win32.h, bcc32/Makefile.sub (config.h): bcc 5.8 hasnobu
stdint.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04* array.c (rb_ary_sort_bang): respect overridden <=> for String andnobu
Fixnum. [ruby-core:17708] * include/ruby/node.h (NOEX_BASIC): basic definition method flag. * include/ruby/intern.h, vm_method.c (rb_method_basic_definition_p): new function to check if the method is not redefined after the initialization. * vm_method.c (rb_obj_respond_to): use rb_method_basic_definition_p. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-04* array.c (rb_ary_tmp_new): added.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-31* include/ruby/ruby.h (struct RString): size of ary must bemame
RSTRING_EMBED_LEN_MAX + 1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-27* include/ruby/ruby.h: add a type T_DEFERRED.ko1
* gc.c: fix deferred finalizer system. finalize processes of T_DATA and T_FILE are executed after gc process. And fix to use BUILTIN_TYPE() instead of seeing flag. * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT() and check intterupt_flag at rb_thread_execute_interrupts(). * thread.c (mutex_mark): fix to mark next_mutex. * vm.c (rb_thread_mark): fix to mark keeping_mutexes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-22* include/ruby/intern.h, sprintf.c (rb_str_catf, rb_str_vcatf): newnobu
functions. [ruby-dev:35597] * string.c (rb_str_capacity): new function to return the capacity. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-21* include/ruby/intern.h (rb_str_buf_new2): optimization for literals.nobu
* string.c (str_buf_cat): returns VALUE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-21* include/ruby/intern.h (rb_str_buf_cat2, rb_str_cat2): optimizationnobu
for literals. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12 * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.usa
* {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12* include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12* include/ruby/intern.h (HAVE_RUBY_RUBY_H): defines macros so thatnobu
extconf.rb do not need to check if headers exist under separated directory. [ruby-dev:35437] * include/{ruby,rubyio,rubysig}.h, include/ruby/intern.h: use "ruby/..." instead of <ruby/...>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-12* configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.nobu
* include/ruby/ruby.h (PRI?PTRDIFF, PRI?SIZE): printf conversion specifiers for ptrdiff_t and size_t/ssize_t. * insns.def (leave), marshal.c (long_toobig), transcode.c (str_transcode), vm_dump.c (control_frame_dump, stack_dump_each), (debug_print_register, debug_print_pre): t and z length modifiers are C99. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-10 * include/ruby/win32.h (pipe): prohibit inheritance.usa
fixed: [ruby-dev:35421] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-08 * dir.c: shoudn't use ruby object in globbing, because glob serviceusa
routines are called before initializing ruby on some platforms (ex. windows). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-07* dir.c: preserve encoding of strings in glob and fnmatch.naruse
* include/ruby/ruby.h: related changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-05* include/ruby/ruby.h (NUM2INT): cast to int.akr
(FIX2INT): ditto. (NUM2UINT): cast to unsigned int. (FIX2UINT): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e