nobu
01b773a093
* load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
...
* load.c (rb_get_load_path): returns absolute load path.
* load.c (load_path_getter): $LOAD_PATH getter.
* file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
ruby_init_loadpath): use the accessor.
* vm.c (rb_vm_mark): mark load_path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 09:03:03 +00:00
usa
915b5c5508
* file.c (eaccess): workaround for recent msvcrt's behavior.
...
[ruby-core:16460]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 00:58:04 +00:00
nobu
5e433ffc6c
* file.c (file_expand_path): constified.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16099 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 06:19:28 +00:00
matz
755a86b87a
* file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
...
half-baked result string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-14 13:45:26 +00:00
nobu
0ae6c7f816
* file.c (file_expand_path): set external encoding.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-11 18:13:40 +00:00
nobu
23bb4d7898
* file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
...
copy encoding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-11 18:12:18 +00:00
nobu
31b604a3f3
* file.c (isdirsep): backslash is valid path separator on cygwin too.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-08 09:51:00 +00:00
nobu
12551ae573
* file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
...
[ruby-core:15795]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-05 08:53:08 +00:00
nobu
5848032ce5
* file.c (rb_file_flock): immediately returns on EAGAIN if
...
non-blocking. [ruby-core:15672]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-28 02:43:59 +00:00
nobu
4804658649
* configure.in (ftruncate): check if available.
...
* file.c (rb_file_truncate): check if ftruncate instead of truncate.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-14 17:42:27 +00:00
nobu
3a9bf2f124
* file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-14 07:02:54 +00:00
naruse
998113d62f
* file.c (lchmod_internal): fix warning cast from pointer to integer of
...
different size.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-08 16:10:27 +00:00
naruse
42dcda08ae
* string.c (rb_str_usascii_new{,2}: defined.
...
(rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
string.
* encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
(rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
use rb_str_ascii_new.
* array.c (recursive_join, inspect_ary): ditto.
* object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
rb_mod_to_s): ditto.
* hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
env_clear, env_to_s, env_inspect): ditto.
* numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
* bignum.c (rb_big2str): ditto.
* file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
file_inspect_join, Init_file): ditto.
* test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-25 16:40:02 +00:00
nobu
2402ecabb0
* file.c (sys_fail2): get rid of unlimited alloca.
...
* io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-16 05:55:22 +00:00
akr
6cdef2dc7e
* $Date$ keyword removed to avoid inclusion of locale dependent
...
string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-06 15:49:38 +00:00
akr
041e829127
* include/ruby/encoding.h (rb_isascii): defined.
...
(rb_isalnum): ditto.
(rb_isalpha): ditto.
(rb_isblank): ditto.
(rb_iscntrl): ditto.
(rb_isdigit): ditto.
(rb_isgraph): ditto.
(rb_islower): ditto.
(rb_isprint): ditto.
(rb_ispunct): ditto.
(rb_isspace): ditto.
(rb_isupper): ditto.
(rb_isxdigit): ditto.
(rb_tolower): ditto.
(rb_toupper): ditto.
* include/ruby/st.h (st_strcasecmp): declared.
(st_strncasecmp): ditto.
* st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
(st_strcasecmp): defined.
(st_strncasecmp): ditto.
* include/ruby/ruby.h: include include/ruby/encoding.h.
(ISASCII): use rb_isascii.
(ISPRINT): use rb_isprint.
(ISSPACE): use rb_isspace.
(ISUPPER): use rb_isupper.
(ISLOWER): use rb_islower.
(ISALNUM): use rb_isalnum.
(ISALPHA): use rb_isalpha.
(ISDIGIT): use rb_isdigit.
(ISXDIGIT): use rb_isxdigit.
(TOUPPER): defined.
(TOLOWER): ditto.
(STRCASECMP): ditto.
(STRNCASECMP): ditto.
* dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
transcode.c, ext/readline/readline.c: use locale insensitive
functions. [ruby-core:14662]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-01 12:24:04 +00:00
matz
bda85cb021
* file.c (Init_File): File.exists? revived.
...
* dir.c (Init_Dir): Dir.exists? again.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 03:34:26 +00:00
akr
b92cee1ddb
* re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
...
use capital letter for \xHH notation. [ruby-dev:32511]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-12 14:30:54 +00:00
akr
f4592d7bb0
* re.c (rb_reg_expr_str): use \xHH instead of \OOO.
...
* regerror.c (to_ascii): ditto.
(onig_snprintf_with_pattern): ditto.
(onig_snprintf_with_pattern): ditto.
* string.c (rb_str_inspect): ditto.
(rb_str_dump): ditto.
* parse.y (parser_yylex): ditto.
* ruby.c (proc_options): ditto.
* file.c (rb_f_test): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 21:48:05 +00:00
akr
3a8f7f1d7f
* include/ruby/ruby.h (FilePathStringValue): defined. similar to
...
FilePathValue but no taint check.
* file.c (rb_get_path_no_checksafe): implementation of
FilePathStringValue.
(rb_file_s_basename): use FilePathStringValue.
(rb_file_s_dirname): ditto.
(rb_file_s_extname): ditto.
(rb_file_s_split): ditto.
(rb_file_join): ditto.
* dir.c (file_s_fnmatch): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 05:12:31 +00:00
nobu
54f236542d
* file.c (rb_get_path): use the original object if to_path method is
...
not defined. [ruby-dev:32473]
* io.c (rb_f_open): call to_open on non-string objects, instead of
to_str. [ruby-dev:32473]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:18:21 +00:00
ko1
3453b2bd0e
* gc.h, vm_core.h: decl of rb_gc_save_machine_context()
...
should be at vm_core.h.
* include/ruby/ruby.h, intern.h: remove type rb_thread_t.
* include/ruby/intern.h: change rb_unblock_function_t,
rb_unblock_function_t.
* file.c, process.c: apply above changes.
* thread.c, thread_pthread.ci, thread_win32.ci: ditto.
* io.c: support blocking open (2). [ruby-core:13614]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-20 10:47:53 +00:00
akr
63a297994b
* file.c (utime_internal): fallback utimensat to utimes.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13970 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-19 09:48:00 +00:00
akr
a070c4fbe3
* configure.in: check struct timespec, clock_gettime, utimensat,
...
struct stat.st_atim,
struct stat.st_atimespec,
struct stat.st_atimensec,
struct stat.st_mtim,
struct stat.st_mtimespec,
struct stat.st_mtimensec,
struct stat.st_ctim,
struct stat.st_ctimespec,
struct stat.st_ctimensec.
* include/ruby/missing.h: provide struct timespec if not available.
* time.c: support nanosecond-resolution using struct timespec.
* include/ruby/intern.h: provide rb_time_nano_new.
* file.c (utime_internal): use utimensat if available.
(rb_file_s_utime): refactored.
(rb_f_test): use stat_atime, stat_mtime, stat_ctime.
(rb_stat_cmp): check tv_nsec.
(stat_atimespec): new function.
(stat_atime): ditto.
(stat_mtimespec): ditto.
(stat_mtime): ditto.
(stat_ctimespec): ditto.
(stat_ctime): ditto.
(rb_stat_atime): use stat_atime.
(rb_file_s_atime): ditto.
(rb_file_atime): ditto.
(rb_stat_mtime): use stat_mtime.
(rb_file_s_mtime): ditto.
(rb_file_mtime): ditto.
(rb_file_ctime): use stat_ctime.
(rb_file_s_ctime): ditto.
(rb_stat_ctime): ditto.
* variable.c (rb_copy_generic_ivar): clear clone's instance variables
if obj has no instance variable.
* marshal.c (w_object): dump instance variables of generated string
for TYPE_USERDEF, even if original object has instance variables.
* lib/time.rb (Time#xmlschema): use nsec instead of usec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-19 09:09:38 +00:00
matz
7a978073c9
* parse.y (parser_yylex): should clear parser->tokp as well.
...
[ruby-dev:32250]
* parse.y: remove NEED_ASSOC that break test_parser_events.
* parse.y (parser_yylex): should not decrement line numbers at the
end of file.
* file.c (rb_find_file_ext): search .rb files first through in the
loadpath.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-19 07:10:09 +00:00
nobu
6c77d58356
* file.c (rb_get_path): returns frozen string.
...
* file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-20 02:49:22 +00:00
ko1
6244e502cc
* thread.c: fix Mutex to be interruptable lock.
...
* thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
prepare native_cond_*() which are based on pthread_cond_*() spec.
* prelude.rb: fix Mutex#synchronize method.
* vm_core.h, include/ruby/intern.h: change unblock function interface
(to pass some user data).
* file.c, process.c: ditto.
* benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
* benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
with contension.
* benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
* test/ruby/test_thread.rb: add a test.
* common.mk: fix benchmark options.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13290 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-27 16:48:14 +00:00
matz
a25fbe3b3e
* encoding.c: provide basic features for M17N.
...
* parse.y: encoding aware parsing.
* parse.y (pragma_encoding): encoding specification pragma.
* parse.y (rb_intern3): encoding specified symbols.
* string.c (rb_str_length): length based on characters.
for older behavior, bytesize method added.
* string.c (rb_str_index_m): index based on characters. rindex as
well.
* string.c (succ_char): encoding aware succeeding string.
* string.c (rb_str_reverse): reverse based on characters.
* string.c (rb_str_inspect): encoding aware string description.
* string.c (rb_str_upcase_bang): encoding aware case conversion.
downcase, capitalize, swapcase as well.
* string.c (rb_str_tr_bang): tr based on characters. delete,
squeeze, tr_s, count as well.
* string.c (rb_str_split_m): split based on characters.
* string.c (rb_str_each_line): encoding aware each_line.
* string.c (rb_str_each_char): added. iteration based on
characters.
* string.c (rb_str_strip_bang): encoding aware whitespace
stripping. lstrip, rstrip as well.
* string.c (rb_str_justify): encoding aware justifying (ljust,
rjust, center).
* string.c (str_encoding): get encoding attribute from a string.
* re.c (rb_reg_initialize): encoding aware regular expression
* sprintf.c (rb_str_format): formatting (i.e. length count) based
on characters.
* io.c (rb_io_getc): getc to return one-character string.
for older behavior, getbyte method added.
* ext/stringio/stringio.c (strio_getc): ditto.
* io.c (rb_io_ungetc): allow pushing arbitrary string at the
current reading point.
* ext/stringio/stringio.c (strio_ungetc): ditto.
* ext/strscan/strscan.c: encoding support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 03:29:39 +00:00
nobu
42850db14b
* configure.in (group_member): check if presents.
...
* configure.in (XCFLAGS): add _GNU_SOURCE on linux.
* file.c (group_member): use system routine if available.
* process.c: moved _GNU_SOURCE macro to Makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-23 08:25:12 +00:00
nobu
f1622c195d
* file.c (rb_file_s_rename): deleted code to get rid of a bug of
...
old Cygwin.
* file.c (rb_file_truncate): added prototype of GetLastError()
on cygwin. [ruby-dev:31239]
* include/ruby/intern.h (is_ruby_native_thread): prototype.
* missing/strftime.c (strftime): fix printf format and actual
arguments.
* ext/Win32API/Win32API.c (Win32API_initialize): ditto.
* ext/tk/tcltklib.c (ip_finalize): ditto.
* ext/win32ole/win32ole.c (lcid_installed): ditto.
* ext/socket/getnameinfo.c: include stdio.h always.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-22 05:33:54 +00:00
nobu
2b592580bf
* include/ruby: moved public headers.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
nobu
62b3932c9c
* file.c (Init_File): method definition mismatch.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-18 16:04:22 +00:00
matz
dcb9f150e5
* file.c (Init_File): add to_path method to File objects.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12292 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-18 07:57:51 +00:00
nobu
7b0f246345
* file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
...
rb_gid_t instead of int.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-04 14:41:16 +00:00
nobu
9b7ecc68a9
* file.c (rb_stat_s_utime): fixed a commit miss for the platforms
...
where utimes() does not exist.
* lib/fileutils.rb (touch): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-04 14:38:02 +00:00
nobu
15dabe8216
* file.c (rb_file_s_utime): allow nil to set the current time.
...
* lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
options. fixed: [ruby-talk:219037]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11973 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-03 13:37:02 +00:00
nobu
5b10c170e5
* file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
...
renamed from OpenFile.
* ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
ext/readline/readline.c, ext/socket/socket.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 10:30:50 +00:00
nobu
8ac59769bc
* file.c (rb_thread_flock, rb_file_flock): use UBF feature.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-24 09:45:41 +00:00
usa
61fbdef349
* file.c (rb_find_file): should not call fpath_check() with NULL.
...
fixed: [ruby-core:09867]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-09 08:50:04 +00:00
matz
7c96418526
* object.c (Init_Object): new method Dir.exist?(path).
...
[ruby-core:09663]
* file.c (Init_File): remove File.exists?; use File.exist?
instead.
* file.c: rename functions to test_* to rb_file_*_p.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-07 15:18:14 +00:00
matz
5dd8f6e20c
* file.c (test_grpowned, rb_stat_grpowned): should honor
...
supplementary group IDs. [ruby-core:09546]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-11-22 08:37:11 +00:00
nobu
b96af08add
* file.c (rb_path_end): skip root directory. fixed: [ruby-core:08913]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-25 12:25:29 +00:00
matz
5cc2093ccd
* hash.c (recursive_hash): remove unused local variable.
...
* parse.y (parser_yylex): ditto.
* parse.y (rb_gc_mark_symbols): fix unmatched prototype .
* file.c (rb_get_path): check NUL byte in the path string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-25 05:57:37 +00:00
nobu
352303c906
* file.c: ISPRINT() needs ctype.h
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-10 00:41:44 +00:00
matz
0f785c3840
* file.c (rb_f_test): test(0) should not have any special
...
meaning. [ruby-dev:29425]
* file.c (rb_f_test): properer error message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-09 16:19:33 +00:00
nobu
585c61691e
* file.c (path_check_0, fpath_check): disable path check on cygwin.
...
[ruby-talk:213074]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-07 14:28:36 +00:00
nobu
b9a508bb96
* file.c (path_check_0): check if sticky bit is set on parent
...
directories for executable path. fixed: [ruby-dev:29415]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-04 20:50:13 +00:00
matz
2156870525
* ruby.h (struct RArray): embed small arrays.
...
(RARRAY_LEN): defined for accessing array members.
(RARRAY_PTR): ditto.
* array.c: use RARRAY_LEN and RARRAY_PTR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-02 14:42:08 +00:00
usa
5b5e4a6fc1
* file.c (test_identical, rb_file_s_truncate): use RSTRING_PTR and
...
RSTRING_STR.
* io.c (pipe_open, rb_io_reopen): ditto.
* process.c (proc_spawn_n, rb_spawn): ditto.
* util.c (ruby_add_suffix): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 11:24:44 +00:00
matz
54af80844f
* ruby.h (struct RString): embed small strings.
...
(RSTRING_LEN): defined for accessing string members.
(RSTRING_PTR): ditto.
* string.c: use RSTRING_LEN and RSTRING_PTR.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 10:47:44 +00:00