Rubyでカスタムオブジェクトから範囲を作成する方法を見つけようとしていました。私はRubyにはとても新しく、Rangeのドキュメントは参考にならないことがわかりました。Rubyカスタムオブジェクトのドキュメントから範囲を作成するには?
私のオブジェクトからRangeを作成しようとしたときに受け取ったエラーは、単に「範囲の値が不正です」でした。
私は最終的に私のオブジェクトから範囲を作成するために、 "succ"と "< =>"関数を定義しなければなりません。
私の質問はこれです。範囲内のオブジェクトを使用するために上記の2つの関数を定義する必要があると私に言った良いリソースがありますか?これからのような問題は避けたい。
大変申し訳ございませんが、あなたの時間をありがとう。
https://.rb#L156はあなたの発言をサポートします。 – Reactormonk
@タス:Rubiniusのように、MRIがC実装で持っているFixnumの最適化もあります。リンクありがとう。 –
実際には '#succ'は' Range#each 'だけで使用されると思いますので、範囲全体を反復しないで(明らかに 'Enumerable'メソッドは使用しないでください)、' <=> '。私はそれを試したことはありませんが、あなたがFloatの範囲を構築できるという事実は、それを示唆しているようです。 –