[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:001839] NArrayMiss trouble



西澤様

NArrayMiss 改訂のお願いです。
NArray で破壊的でないメソッドは、NArrayMiss でも非破壊にしてくだ
さい。具体的には、-@xxxxxx, abs, ~@xxxxxx, not です。現在の cvs 版に対する
パッチを送ります。コミットしてよければします。

すみません、変更がたまってると思いますんで、バージョンアップして
くださいませ。インストールスクリプトもお願いします。(cvs add
してないだけ? あと、ChangeLog ファイルは作ってませんか)

堀之内

--- narray_miss.rb~     Wed Aug 11 11:18:01 2004
+++ narray_miss.rb      Thu Aug 12 16:43:50 2004
@xxxxxx@xxxxxx -377,8 +377,9 @xxxxxx@xxxxxx
 =end
 
   def -@xxxxxx
-    @xxxxxx[@xxxxxx] = -@xxxxxx[@xxxxxx]
-    self
+    array = @xxxxxx
+    array[@xxxxxx] = -@xxxxxx[@xxxxxx]
+    NArrayMiss.to_nam_no_dup(array, @xxxxxx)
   end
   for operator in ["+","-","*","/","%","**"]
     dummy = {"+"=>0,"-"=>0,"*"=>1,"/"=>1,"%"=>1,"**"=>1}[operator]
@xxxxxx@xxxxxx -396,8 +397,9 @xxxxxx@xxxxxx
     EOL
   end
   def abs
-    @xxxxxx[@xxxxxx] = @xxxxxx[@xxxxxx].abs
-    self
+    array = @xxxxxx
+    array[@xxxxxx] = @xxxxxx[@xxxxxx].abs
+    NArrayMiss.to_nam_no_dup(array, @xxxxxx)
   end
 
   for operator in ["add!","sbt!","mul!","div!","mod!"]
@xxxxxx@xxxxxx -428,8 +430,7 @xxxxxx@xxxxxx
 =end
 
   def ~@xxxxxx
-    @xxxxxx = ~@xxxxxx
-    self
+    NArrayMiss.to_nam_no_dup(~@xxxxxx, @xxxxxx)
   end
   for operator in ["&","|","^"]
     dummy = {"&"=>1,"|"=>0,"^"=>1}[operator]
@xxxxxx@xxxxxx -491,8 +492,7 @xxxxxx@xxxxxx
     EOL
   end
   def not
-    @xxxxxx = @xxxxxx
-    return self
+    NArrayMiss.to_nam_no_dup(@xxxxxx, @xxxxxx)
   end
 
 #  def ==(arg)