eval
Persica は Javascript と相性が悪いことが判明。eval が消化不良を起こしてしまう。動けばいいやと良く分からないまま書いた箇所だ。とりあえず調査中。
メモ。
Net::HTTP でハマっている。正確には Net::HTTP::Proxy である。いまいち良く分かっていないのだが、どうも start で刺さってしまっているらしく、しばらく待つと Timeout:Error が返って来る。
問題が発生するのは例によって Persica の Amazon プラグイン。しかしテスト(Amazon プラグインのインスタンスを生成して apply_block を呼び出すだけ)を書いて実行するときちんと正常な結果を返すのだ。
……と悩んでいたのだが、ふと思いついて amazon プラグイン使用ファイルだけを変換してみたら問題なし。ならば、とファイル単位でGC.startを実行するようにしたら、案の定、何事もなかったかのように正常に動作するようになったとさ。めでたしめでたし。
メモ。
String の Array があったとして、その全要素について前後の空白を削除したい場合。
array = [ " aaa ", " bbb ", " ccc " ] array.map!{ |i| i.strip } #=> [ "aaa", "bbb", "ccc" ]
String 以外のものが入っている可能性も考慮してみる。
array = [ " aaa ", 1, nil ] array.map!{ |i| i.strip rescue i } #=> [ "aaa", 1, nil ]
あとくされないように全部 String にしてみたり。
array = [ " aaa ", 1, nil ] array.map!{ |i| i.to_s.strip } #=> [ "aaa", "1", "" ]