shugo
f433d710d0
* object.c (rb_obj_untrusted): new method Object#untrusted?.
...
(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-13 07:25:05 +00:00
matz
090004886d
* time.c (time_cmp): retry with right hand operand if its not a
...
time object. [ruby-dev:35011]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 07:13:27 +00:00
nobu
5669377a57
* iseq.c (COMPILE_OPTION_FALSE), time.c (timegm_noleapsecond),
...
thread.c (eKillSignal, eTerminateSignal),
missing/vsnprintf.c (BSD_vfprintf): constified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-01 08:44:32 +00:00
akr
6e90749f80
* time.c: fix rounding negative float.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 16:10:46 +00:00
nobu
5a647a3f5f
* include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.
...
* *.c: no cache in init functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-09 09:25:32 +00:00
ko1
72ba13aa8e
* array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,
...
enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c,
io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c,
string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c,
vm.c, gc.c:
allocated memory objects by xmalloc (ruby_xmalloc) should be
freed by xfree (ruby_xfree).
* ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c,
ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c,
ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c,
ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c,
ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c:
ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-08 10:01:40 +00:00
nobu
7c5e3348f7
* suppress warnings on cygwin, mingw and mswin.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-01 19:55:25 +00:00
nobu
075530a685
* suppress warnings with -Wwrite-string.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-31 09:28:20 +00:00
akr
04752225a7
* time.c (obj2nsec): fix string argument.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-04 07:05:26 +00:00
akr
74697788d4
* time.c (time_timespec): raise TypeError for nil and other objects
...
which has no divmod method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-03 09:12:13 +00:00
nobu
e615e3ce30
* error.c (builtin_types), signal.c (siglist), st.c (primes),
...
struct.c (ref_func), time.c (months): constified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 08:30:22 +00:00
matz
6a45f0a50e
* time.c: should include <errno.h> to refer errno.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-21 01:07:00 +00:00
usa
7dd42a48e1
* time.c (rb_strftime): check errno to detect strftime(3)'s error.
...
this is workaround for recent version of MSVCRT.
[ruby-dev:34456]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-21 00:59:43 +00:00
akr
861219ce4a
fix doc.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-09 01:04:46 +00:00
matz
daa622aed0
* time.c (time_strftime): format should be ascii compatible.
...
* parse.y (rb_intern3): non ASCII compatible symbols.
* re.c (rb_reg_regsub): add encoding check.
* string.c (rb_str_chomp_bang): ditto.
* test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-29 09:19:15 +00:00
naruse
887485907e
* time.c (time_cmp): Time.<=> no longer supports comparison with
...
numeric. [ruby-core#15332]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-02 08:46:05 +00:00
akr
4eca4cadff
* time.c (make_time_t): revert round trip test. [ruby-dev:33058]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-24 06:10:49 +00:00
nobu
9430d7d803
* time.c (time_strftime): copy encoding from format. [ruby-dev:33303]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-23 06:25:06 +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
nobu
91f9acdfee
* time.c (time_arg): use converted object. [ruby-core:14759]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-04 14:08:50 +00:00
akr
4666b9da3d
* time.c: don't mention an obsolete library, ParseDate.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-03 02:46:08 +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
akr
48af602e38
* time.c (make_time_t): verify mktime and timegm result.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-28 08:35:52 +00:00
nahi
8523343780
* cosmetic: fixed a typo in RDoc comment
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-15 01:14:25 +00:00
akr
43e55c6bc4
* time.c (time_mload): ignore invalid digits in submicro.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-20 12:50:29 +00:00
akr
9ea27a0b53
update doc.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-20 10:55:22 +00:00
akr
18b46e0c21
update doc.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-19 14:40:15 +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
akr
3184ac2dfe
* time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-18 09:30:17 +00:00
akr
1e3ca9807b
* time.c (time_arg): show actual year in 2-3 digits year warning.
...
(time_mdump): show actual year in "year too big to marshal" error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-18 08:30:26 +00:00
ko1
25c0cb981a
* include/ruby/ruby.h: introduce 2 macros:
...
RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
Rename RFloat#value -> RFloat#double_value.
Do not touch RFloat#double_value directly.
* bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
time.c: apply above changes.
* ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-13 16:00:53 +00:00
knu
f3e7ae5696
* time.c (time_to_s): Fix documentation. Time format changed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-05 07:12:54 +00:00
matz
7b28e82f6f
* time.c (Init_Time): remove obsolete Time::times.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-04 07:56:55 +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
matz
73c8156360
* time.c (time_succ): Time#succ should return a time object in the
...
same timezone mode to the original. [ruby-talk:260256]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-17 23:55:17 +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
matz
9cd678b72f
* time.c (time_arg): should allow to specify 24:00.
...
[ruby-core:10915]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-16 07:28:16 +00:00
ko1
a3e1b1ce7e
* Merge YARV
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-31 15:02:22 +00:00
matz
0f519375ab
* time.c (time_dup): duplicate the class of original time.
...
[ruby-core:09357]
* lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
should respect subclasses. [ruby-core:09357]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-31 08:08:46 +00:00
matz
ddfc925c8d
* time.c (time_to_s): adopt new date format using digits
...
e.g. "2006-09-07 02:03:45 +9000".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-07 16:10:33 +00:00
nobu
6a0636b2d4
* time.c (time_to_s): variable declaration after an execution
...
statement.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-04 21:48:47 +00:00
matz
cbe89cef1a
* time.c (time_to_s): make it conform to RFC2822 date format.
...
[ruby-dev:29467]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-04 17:21:53 +00:00
nobu
448154a7da
* time.c (time_strftime): include nul character. fixed: [ruby-dev:29422]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-04 12:14:47 +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
matz
9121d687c5
* time.c (time_to_s): fixed typo. [ruby-dev:29162]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-28 00:47:26 +00:00
nobu
41005d43a8
* time.c (time_to_s): fixed format mismatch.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27 13:23:18 +00:00
eban
a78b09b110
* time.c: need to declare time_utc_offset.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27 09:14:38 +00:00
matz
b0283eed43
* ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
...
Solaris compiler. [ruby-core:08114]
* time.c (time_to_s): use +0900 style timezone string for local time.
[ruby-dev:29143]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27 07:48:04 +00:00
matz
e8ed635174
* time.c (time_to_s): generate RFC822 style date string.
...
[ruby-dev:29143]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-27 00:15:07 +00:00
matz
672549bb47
* eval.c (proc_invoke): should not overwrite block information in
...
current frame. [ruby-dev:28957]
* eval.c (rb_yield_0): retrieve proper block object from the frame
record.
* eval.c (proc_alloc): return preserved block object if it's
available.
* st.h (st_data_t): use pointer sized integer for st_data_t.
[ruby-dev:28988]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-07-10 01:08:15 +00:00