[#46329] [ruby-trunk - Feature #7252][Assigned] version number of 2.0 release — "usa (Usaku NAKAMURA)" <usa@...>

26 messages 2012/11/01

[#46350] RubySpecメンテナ — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

15 messages 2012/11/02

[#46414] [ruby-trunk - Bug #7287][Open] please rename atomic.h which conflicts with /usr/include/atomic.h in Solaris10 — "ngoto (Naohisa Goto)" <ngotogenome@...>

10 messages 2012/11/06

[#46434] トラップハンドラで許されない操作はなにか — KOSAKI Motohiro <kosaki.motohiro@...>

小崎です

9 messages 2012/11/06

[#46440] [ruby-trunk - Bug #7300][Open] Hash#[] の挙動が 1.9.3 と異なっている — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

12 messages 2012/11/07

[#46477] Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...>

refinement を導入するときの性能に対する excuse が「method cache に殆どあ

20 messages 2012/11/11
[#46480] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/11

前田です。

[#46488] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

 ささだです.

[#46491] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46493] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

 ささだです.

[#46495] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46497] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — SASADA Koichi <ko1@...> 2012/11/12

(2012/11/12 18:20), Shugo Maeda wrote:

[#46501] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Shugo Maeda <shugo@...> 2012/11/12

前田です。

[#46513] Re: Fwd: [ruby-changes:25559] shugo:r37616 (trunk): * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): — Nobuyoshi Nakada <nobu@...> 2012/11/14

なかだです。

[#46509] [ruby-trunk - Bug #7344][Open] gem pristine bigdecimal が失敗してしまう — "hsbt (Hiroshi SHIBATA)" <shibata.hiroshi@...>

31 messages 2012/11/13

[#46520] [ruby-trunk - Bug #7356][Open] ruby-2.0.0-preview1 で adlint-2.6.10 が性能劣化 — "yanoh (Yutaka Yanoh)" <yutaka@...>

11 messages 2012/11/15

[#46647] [ruby-trunk - Bug #7452][Assigned] Main thread is stopped after running finalizers if the main thread has a finalizer — "mrkn (Kenta Murata)" <muraken@...>

8 messages 2012/11/28

[ruby-dev:46481] [ruby-trunk - Feature #6643] io.seek(off, :end)

From: "Glass_saga (Masaki Matsushita)" <glass.saga@...>
Date: 2012-11-11 14:15:10 UTC
List: ruby-dev #46481
Issue #6643 has been updated by Glass_saga (Masaki Matsushita).

File patch3.diff added

:setか:SETの類だけ受け付ければ良いのであれば、小文字のシンボルも大文字のシンボルも変数として持っておいて良いんじゃないかなあと思いました。
(あまりスマートではない気もしますが)

# :Setや:Currentも使えた方が良い、という人はいませんよね?

なので、そのようにしたpatchをつくりました。
:eNdのようなシンボルまで受け付けてしまう問題、エラーメッセージの正確さの問題はこれで解決します。
また、先のpatchではdowncase!して小文字に合わせていたので、大文字が好みの人にだけメソッド呼び出しのコストを強いていましたが、
両方変数として持っておけばそのような事もありません。
----------------------------------------
Feature #6643: io.seek(off, :end)
https://bugs.ruby-lang.org/issues/6643#change-32778

Author: akr (Akira Tanaka)
Status: Assigned
Priority: Normal
Assignee: akr (Akira Tanaka)
Category: 
Target version: 2.0.0


IO#seek メソッドの whence 引数としてシンボルを受け付けるようにしませんか。

つまり、
  io.seek(0, IO::SEEK_END)
のかわりに
  io.seek(0, :end)
とかけるようにする、ということです。

IO::SEEK_END と等価な指定として :end,
IO::SEEK_CUR と等価な指定として :cur,
IO::SEEK_SET と等価な指定として :set を
受け付けるようにします。

思い立ったきっかけとしては、
ひさしぶりに seek を使ったら、
  io.seek(IO::SEEK_END)
と書いてしまって、これは私の環境では IO::SEEK_END が 2 なので、
  io.seek(2)
つまり
  io.seek(2, IO::SEEK_SET)
と解釈されてしまって、ちょっと悩んだためです。

もし同様な間違いをしてしまっても、IO::SEEK_END でなく :end と
書いたのであれば、
  io.seek(:end)
は can't convert Symbol into Integer (TypeError) となるので悩まなくて済んだのに、
と思いました。

なお、その間違いをしたのは私だけではないようで、検索すると
  http://jira.codehaus.org/browse/JRUBY-1897
  http://rubyforge.org/pipermail/biocatalogue-developers/attachments/20100512/2eacb73c/attachment-0001.html
というふたつの例が見つかります。

どうでしょうか。



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

In This Thread