summaryrefslogtreecommitdiffstats
path: root/include/ruby/ruby.h
Commit message (Collapse)AuthorAgeFilesLines
* * error.c (Init_Exception): introduce EncodingError which is amatz2008-09-261-0/+1
| | | | | | | | | superclass for all encoding related exception classes, e.g. Encoding::CompatibilityError. [ruby-dev:36371] * transcode.c (Init_transcode): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * complex.c: an instance method image has been removed andtadf2008-09-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | uses "imag" instead of "image". * complex.c: two instance method re and im are removed. * rational.c: follows the above changes. * include/ruby/ruby.h: ditto. * gc.c: ditto. * lib/cmath.rb: ditto. * lib/mathn.rb: ditto. * lib/complex.rb: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * transcode.c: add "Error" suffix for Encoding exception classes.matz2008-09-181-0/+1
| | | | | | | | | | a patch from Tadashi Saito <shiba at mail2.accsnet.ne.jp> in [ruby-dev:36346]. * encoding.c (Init_Encoding): rename EncodingCompatibilityError to Encoding::CompatibilityError. [ruby-dev:36366] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c, include/ruby/ruby.h: rename rb_register_mark_object()ko12008-09-151-1/+1
| | | | | | | | | | | | | | to rb_gc_register_mark_object(). * eval.c, vm.c: initialize vm->mark_object_ary at Init_top_self(). * bignum.c, complex.c, encoding.c, ext/win32ole/win32ole.c, io.c, load.c, marshal.c, rational.c, ruby.c, vm.c: use rb_gc_register_mark_object() instead of rb_global_variable() or rb_gc_register_address(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typos.akr2008-09-091-1/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (DBL2NUM): renamed from DOUBLE2NUM.matz2008-09-051-1/+1
| | | | | | | a patch from Tadashi Saito <shiba at mail2.accsnet.ne.jp> in [ruby-dev:36102]. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@19160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c, include/ruby/ruby.h: rename T_DEFERRED to T_ZOMBIE.ko12008-08-291-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (INT2NUM): just use a simple macro on LP64.akr2008-08-211-10/+15
| | | | | | | (UINT2NUM): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix previsous change again.akr2008-08-211-4/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h: fix previous change for LP64.akr2008-08-211-2/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (NUM2LONG): make it inline function to evalueteakr2008-08-211-7/+44
| | | | | | | | | | | | | | | the argument only once. `t = Object.new; def t.*(x) p x; 0 end; p Time.at(0, t)' did print x twice. (NUM2INT): ditto. (NUM2LL): ditto. (INT2NUM): make it inline function. (LONG2NUM): ditto. (UINT2NUM): ditto. (ULONG2NUM): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (rb_intern_const): tiny optimization.nobu2008-08-161-0/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h: commit miss.nobu2008-08-161-0/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (SSIZET2NUM, NUM2SSIZET, SSIZE_MAX, SSIZE_MIN):nobu2008-08-151-0/+20
| | | | | | | macros for ssize_t. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * object.c (rb_obj_untrusted): new method Object#untrusted?.shugo2008-08-131-7/+9
| | | | | | | | | | | | | | | (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: http://svn.ruby-lang.org/repos/ruby/trunk@18568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * error.c (rb_eEncCompatError): add Exception.naruse2008-08-121-0/+1
| | | | | | | | | | | | | | | | * 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: http://svn.ruby-lang.org/repos/ruby/trunk@18546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (struct RString): size of ary must bemame2008-07-311-1/+1
| | | | | | | RSTRING_EMBED_LEN_MAX + 1. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18289 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h: add a type T_DEFERRED.ko12008-07-271-0/+2
| | | | | | | | | | | | | | * 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: http://svn.ruby-lang.org/repos/ruby/trunk@18231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.usa2008-07-121-2/+2
| | | | | | | | * {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.nobu2008-07-121-6/+6
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.nobu2008-07-121-13/+36
| | | | | | | | | | | | | * 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: http://svn.ruby-lang.org/repos/ruby/trunk@18038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * dir.c: shoudn't use ruby object in globbing, because glob serviceusa2008-07-081-2/+2
| | | | | | | | | routines are called before initializing ruby on some platforms (ex. windows). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * dir.c: preserve encoding of strings in glob and fnmatch.naruse2008-07-071-3/+2
| | | | | | * include/ruby/ruby.h: related changes. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (NUM2INT): cast to int.akr2008-07-051-4/+4
| | | | | | | | | (FIX2INT): ditto. (NUM2UINT): cast to unsigned int. (FIX2UINT): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * compile.h, insns.def: reduce insn operand of "trace".ko12008-07-011-12/+13
| | | | | | | | * include/ruby/ruby.h: add RUBY_EVENT_COVERAGE event. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (enum ruby_special_consts): ISO C forbidsshyouhei2008-07-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | comma at end of enumerator list * include/ruby/ruby.h (enum ruby_value_type): ditto. * eval_intern.h (enum): ditto. * vm_core.h (enum rb_thread_status): ditto. * parse.y (enum lex_state_e): ditto. * parse.y (enum string_type): ditto. * process.c (enum): ditto. * ruby.c (enum dump_flag_bits): ditto. * ruby.c (enum disable_flag_bits): ditto. * compile.c (iseq_link_element): ditto * debug.c (union): ditto. * cont.c (enum context_type): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (rb_intern): prefix __extnsion__ forshyouhei2008-07-011-1/+1
| | | | | | | | | | | | | braced-groups within expressions. * include/ruby/intern.h (rb_usascii_str_new2): ditto. * include/ruby/intern.h (rb_tainted_str_new2): ditto. * include/ruby/intern.h (rb_str_new2): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c, vm_core.h,vm_core.h, vm_dump.c, iseq.c: rename class nameko12008-06-291-3/+0
| | | | | | | | | | | | VM -> RubyVM, and rename rb_cVM -> rb_cRubyVM. "VM" is too short name for class. * test/ruby/test_method.rb, test/ruby/test_settracefunc.rb: ditto. * include/ruby/ruby.h: rb_cRubyVM, rb_cEnv, rb_cISeq should not be exposed. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (struct RRegexp): new field usecnt. replaceakr2008-06-281-2/+5
| | | | | | | | | | | | | | | | | | | | | str and len by src. * gc.c (gc_mark_children): mark src field of regexp. (obj_free): don't free str field. * re.c (REG_BUSY): removed. (rb_reg_initialize): prohibit re-initialize regexp. (rb_reg_search): use usecnt to prevent freeing regexp currently using. this prevents SEGV by: r = /\A((a.)*(a.)*)*b/ r =~ "ab" + "\xc2\xa1".force_encoding("euc-jp") t = Thread.new { r =~ "ab"*8 + "\xc2\xa1".force_encoding("utf-8")} sleep 0.2 r =~ "ab"*8 + "\xc2\xa1".force_encoding("euc-jp") git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (rb_intern): use rb_intern2 with strlen forakr2008-06-121-1/+1
| | | | | | | constant symbols to optimize strlen. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h, proc.c: revert rb_proc_call() andko12008-06-101-2/+0
| | | | | | | | | | create rb_proc_call_with_block() instaed. * include/ruby/ruby.h, eval_jump.c, thread.c, vm_insnhelper.c: rb_blockptr should not be exposed. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (CONST_ID_CACHE): fixed statement expression.nobu2008-06-101-4/+4
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h, vm_core.h: add a type rb_blockptr.mame2008-06-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | * vm_insnhelper.c (vm_yield_with_cfunc): vm_yield_with_cfunc receives blockptr and passes it to iterating block. * proc.c (rb_proc_call), include/ruby/intern.h: rb_proc_call receives blockptr. "rb_proc_call(self, args, blockptr)" in C corresponds to "self.call(*args, &block)" in Ruby. * proc.c (proc_call): pass blockptr to block that is written in C. * proc.c (curry): receive blockptr and pass it to original proc. [ruby-core:15551] * vm.c (invoke_block_from_c): fix for change of vm_yield_with_cfunc. * thread.c (call_trace_proc), eval_jump.c (rb_call_end_proc): fix for change of rb_proc_call. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.nobu2008-06-091-6/+10
| | | | | | | * *.c: no cache in init functions. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm_core.h (struct rb_vm_struct): moved ruby_debug, ruby_verbose, andnobu2008-06-091-1/+4
| | | | | | | | | | | rb_progname. * ruby.c (rb_argv0): no longer used. * vm.c: getters/setters for ruby_{debug,verbose}. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * suppress warnings with -Wwrite-string.nobu2008-05-311-2/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h: renamed include guard.nobu2008-05-311-5/+7
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16712 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c, eval_intern.h, include/ruby/intern.h, include/ruby/ruby.h,ko12008-05-221-10/+10
| | | | | | | | vm.c, vm_core.h, vm_insnhelper.c: remove pointless "const". git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,usa2008-05-221-10/+10
| | | | | | | | vm.c: need to add const to prototypes, of course. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (PRI[diouxX]VALUE): printf format for VALUE.nobu2008-05-201-0/+12
| | | | | | | * gc.c (assign_heap_slot): suppress a warning. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.ko12008-05-191-10/+0
| | | | | | | | | | | | | | VM value stack frame of block contains cref information. (dfp[-1] points CREF) * compile.c, eval_intern.h, eval_method.c, load.c, proc.c, vm_dump.h, vm_core.h: ditto. * include/ruby/ruby.h, gc.c: remove T_VALUES because of above changes. * bootstraptest/test_eval.rb, test_knownbug.rb: move solved test. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bigzero_p): check from MSB to LSB. [ruby-dev:34649]akr2008-05-121-0/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (SIZET2NUM): new macro.akr2008-05-111-0/+14
| | | | | | | | | | | | | | | | | | | | | (NUM2SIZET): new macro. * gc.c (struct rb_objspace): use size_t for increment, length and used for 64bit. (allocate_heaps): ditto. (assign_heap_slot): ditto. (set_heaps_increment): ditto. (gc_mark_all): ditto. (is_pointer_to_heap): ditto. (free_unused_heaps): ditto. (gc_sweep): ditto. (os_obj_of): ditto. (rb_gc_call_finalizer_at_exit): ditto. (count_objects): ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead ofakr2008-04-281-1/+1
| | | | | | | | | FIXNUM_MAX to make it possible to convert to double accurately. It assumes FLT_RADIX is 2. fix RubyForge bug #14102. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h, gc.c: remove T_BLOCK.ko12008-04-261-34/+32
| | | | | | | | * include/ruby/ruby.h: re-number T_xxx. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.knu2008-04-201-0/+1
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (Init_stack): use ruby_init_stack. [ruby-dev:34350]nobu2008-04-141-4/+2
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* both complex and rational are now builtin classes.tadf2008-03-161-0/+21
| | | | git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (inttypes.h): includes always if available.nobu2008-03-141-0/+4
| | | | | | | * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.akr2008-02-251-6/+6
| | | | | | | | | | | | | | | | (ROBJECT_IVPTR): renamed from ROBJECT_PTR. * variable.c: follow the above renaming. * object.c: ditto. * gc.c: ditto. * marshal.c: ditto. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e