teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

文法修正

2020/11/27 14:17

投稿

baban
baban

スコア19

title CHANGED
@@ -1,1 +1,1 @@
1
- `map``select`メソッドで、配列以外を返す書き方
1
+ mapやselectメソッドで、配列以外を返す書き方
body CHANGED
@@ -13,10 +13,11 @@
13
13
  end
14
14
  ```
15
15
 
16
- ここで、一度`select`メソッドで絞った後に、同じCollectionとして返すために`HistoryCollection.new`をするのを見て「気持ち悪いな」と思って、これを無くせなかコードをいじろうとしてみました。
16
+ ここで、一度`select`メソッドで絞った後に、同じCollectionとして返すために`HistoryCollection.new`をするのを見て、自分は「気持ち悪いな」と思いました。
17
+ なので、これを無くせないかコードをいじろうとしてみました。
17
18
 
18
- パッと思いついたのが、`Enumerable`をincludeすればいけるかなと思ったのですが
19
+ そこで、パッと思いついたのが、`Enumerable`をincludeすればいけるかなと思ったのですが
19
- 想定と違っていました。
20
+ 想定と違っていましたので少し見てください
20
21
 
21
22
  ```ruby
22
23
  class HistoryCollection
@@ -36,6 +37,6 @@
36
37
 
37
38
  実際やってみるとこの時の`select_by_name`の返り値は`Array`クラス。
38
39
 
39
- この辺りでやっと気付いたのですが、`Enumerable`を`include`しても、`map`や`select`メソッドで返ってくる値は元クラスので
40
+ `Enumerable`を`include`しても、`map`や`select`メソッドで返ってくる値がいつ間には`Array`に変わってしまいます。
40
41
 
41
- 集合を作るつもりで用意したのに、知らない間にクラスが変わってしまうのは辛いので、`map`や`select`などを実行した時に、同じクラスの集合を返すような書き方というのは無いのでしょうか?
42
+ 集合を作るつもりで`Collection`の名前を冠するクラスを用意したのに、知らない間にクラスが変わってしまうのは辛いので、`map`や`select`などを実行した時に、同じクラスの集合を返すような書き方というのは無いのでしょうか?