[Closed] WIN32OLE_VARIANT.new method lacks consistency

Issue #3901 has been updated by Masaki S…

Status changed from Assigned to Closed

放置していてすみません。
2.2.0 では TypeErrorにすることにしました。


Feature #3901: WIN32OLE_VARIANT.new method lacks consistency

  • Author: Akio T.
  • Status: Closed
  • Priority: Low
  • Assignee: Masaki S.
  • Category: ext
  • Target version: next minor

=begin
WIN32OLE_VARIANT.newの引数が配列かどうかで変換可否が変わります。
一貫性が無いので気になりました。

詳細:
WIN32OLE_VARIANT.new(Kernel)はTypeError: can not convert
WIN32OLE_VARIANT from type Moduleとなります。
WIN32OLE_VARIANT.new([Kernel])は、KernelにIDispatchをラップしたWIN32OLEオブジェクトを生成します。

あるべき姿:
配列を指定した場合と同様、Rubyのオブジェクトでスカラ型に変換できないものはIDispatchのラッパーにするのが良いと思います。
ただし元々WIN32OLE_VARIANTが必要な事例が少ないので、修正する必要性については不明です。
=end