[#45910] [ruby-trunk - Bug #6694][Open] Thread.new without block. — "ko1 (Koichi Sasada)" <redmine@...>

24 messages 2012/07/04

[#45913] [ruby-trunk - Bug #6698][Open] MacOSXではDir.globが返すファイル名の内容はUTF8-MACですがencodingがUTF-8になっている — "imkira (Mario Freitas)" <imkira@...>

10 messages 2012/07/04

[#45933] [ruby-trunk - Bug #6716][Open] FileUtils.mv でリンク先がないシンボリックリンクファイルを指定すると ENOENT エラーになる — "tommy (Masahiro Tomita)" <tommy@...>

8 messages 2012/07/10

[#45976] [ruby-trunk - Bug #6756][Open] FileUtils.rm_rf がアクセス権のない空ディレクトリを削除しない — "fumiyas (Fumiyasu SATOH)" <fumiyas@...>

9 messages 2012/07/20

[#46012] [ruby-trunk - Feature #6812][Open] Refactor gc.c — "authorNari (Narihiro Nakamura)" <authorNari@...>

13 messages 2012/07/30

[ruby-dev:45954] [ruby-trunk - Bug #6195][Rejected] String#[] に逆順の Range を渡した場合の挙動

From: "matz (Yukihiro Matsumoto)" <matz@...>
Date: 2012-07-14 08:07:47 UTC
List: ruby-dev #45954
Issue #6195 has been updated by matz (Yukihiro Matsumoto).

Status changed from Assigned to Rejected

本人も取り下げたようなのでリジェクトします。

Matz.

----------------------------------------
Bug #6195: String#[] に逆順の Range を渡した場合の挙動
https://bugs.ruby-lang.org/issues/6195#change-28057

Author: mrkn (Kenta Murata)
Status: Rejected
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: 2.0.0
ruby -v: ruby 2.0.0dev (2012-03-23 trunk 35121) [x86_64-darwin11.3.0]


以下のように String#[] に対して、範囲の開始インデックスが文字列の長さ以下の値である逆順の Range (beg > end) を渡した場合に空文字列が返ります。

  "1"[1..0] #=> ""
  "1"[1..-1] #=> ""
  "123"[2..1] #=> ""
  "123"[2..-2] #=> ""

一方、範囲の開始インデックスが文字列の長さより大きい場合は nil が返ります。

  "1"[2..0] #=> nil
  "1"[2..-1] #=> nil
  "123"[4..1] #=> nil
  "123"[4..-2] #=> nil

この挙動の違いは、rb_range_beg_len の実装に起因しています。
文字列のインデックスが昇順のみである仕様を考慮すると、上記前者の場合も nil が返るべきじゃないかと思います。



-- 
http://bugs.ruby-lang.org/

In This Thread

Prev Next