[#42194] Enhancing Numeric#step — "Akinori MUSHA" <knu@...>

 Numeric#step の仕様の拡張を提案します。

26 messages 2010/09/08
[#42196] Re: Enhancing Numeric#step — Yukihiro Matsumoto <matz@...> 2010/09/08

まつもと ゆきひろです

[#42200] Re: Enhancing Numeric#step — "Akinori MUSHA" <knu@...> 2010/09/08

At Wed, 8 Sep 2010 22:46:57 +0900,

[#42204] Re: Enhancing Numeric#step — Yukihiro Matsumoto <matz@...> 2010/09/09

まつもと ゆきひろです

[#42232] 1.9.2 readline can't handle cursorkeys, mbcs chars etc (msvcrt) — arton <artonx@...>

artonです。

11 messages 2010/09/10

[#42269] [Ruby 1.9-Bug#3836] Kernel.system, spawnがスペースを含むパスで動作しない — Hiroki Najima <redmine@...>

チケット #3836 が更新されました。 (by Hiroki Najima)

12 messages 2010/09/16
[#42270] WindowsでのKernel.systemの挙動、一貫性について — NAJIMA Hiroki <h.najima@...> 2010/09/16

名島(Nazy)と申します。

[#42310] ビジースレッドがあるとコンテキストスイッチが起きづらくなる — kuwamoto shintaro <beuniv@...>

こんにちは。

9 messages 2010/09/29
[#42315] [bug:trunk] ビジースレッドがあるとコンテキストスイッチが起きづらくなる — "U.Nakamura" <usa@...> 2010/09/30

こんにちは、なかむら(う)です。

[ruby-dev:42214] Re: Enhancing Numeric#step

From: Kouhei Sutou <kou@...>
Date: 2010-09-09 10:33:20 UTC
List: ruby-dev #42214
須藤です。

In <E1OtYoS-0001ex-E4@x61.netlab.jp>
  "[ruby-dev:42210] Re: Enhancing Numeric#step" on Thu, 9 Sep 2010 13:32:41 +0900,
  Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

> のような文法にしようと思っているのですが、キーワード辞書を明
> 示的に取り出さなかった場合には、指定していなかいキーワードに
> 対して例外を出そうと考えています。つまり、
> 
> 
>   def step(to: limit, by: step)
>     ...
>   end
> 
> は、:toと:by以外のキーワードに例外を発生させますが、
> 
>   def step(to: limit, by: step, **kw)
>     ...
>   end
> 
> は、どのキーワードに対しても例外を発生させません。そのことを
> 考えると、rb_scan_options()も例外を発生させるかどうかを切り
> 替える手段があるべきでしょう。それがフラグなのか、別関数にす
> るのかは分かりませんが。

であれば、こんな使い方にするのはどうでしょうか?

  /* toかby以外があれば例外 */
  rb_scan_options(options,
                  "to", &limit,
                  "by", &step,
                  NULL);

  /* toかby以外があったら全部kwに入る */
  rb_scan_options(options,
                  "to", &limit,
                  "by", &step,
                  "**", &kw,
                  NULL);

でも、これだと:**が使えないので、

  /* toかby以外があったら全部kwに入る */
  rb_scan_options(options,
                  "to", &limit,
                  "by", &step,
                  "", &kw,
                  NULL);

とか。
うーん、でも、これはあんまりキレイじゃないですね。。。


In This Thread