種類
- インスタンスメソッド (34)
- 特異メソッド (3)
- クラス (3)
ライブラリ
- win32ole (40)
クラス
- WIN32OLE (2)
-
WIN32OLE
_ METHOD (6) -
WIN32OLE
_ PARAM (2) -
WIN32OLE
_ TYPE (17) -
WIN32OLE
_ TYPELIB (2) -
WIN32OLE
_ VARIABLE (8)
キーワード
-
WIN32OLE
_ METHOD (1) -
WIN32OLE
_ TYPELIB (1) -
WIN32OLE
_ VARIABLE (1) - default (1)
-
default
_ event _ sources (1) -
default
_ ole _ types (1) -
event
_ interface (1) - guid (1)
- helpcontext (2)
- helpfile (2)
- helpstring (2)
-
implemented
_ ole _ types (1) - name (1)
-
ole
_ classes (2) -
ole
_ methods (1) -
ole
_ obj _ help (1) -
ole
_ type _ detail (1) -
ole
_ typelib (1) -
ole
_ types (1) - output? (1)
- progid (1)
- progids (1)
-
size
_ opt _ params (1) -
size
_ params (1) -
source
_ ole _ types (1) -
src
_ type (1) -
to
_ s (1) - typelibs (1)
- value (1)
-
variable
_ kind (1) - variables (1)
- varkind (1)
- visible? (1)
検索結果
先頭5件
-
WIN32OLE
_ TYPE # ole _ type -> String | nil (63679.0) -
selfの型の種類(TYPEKIND)を取得します。
selfの型の種類(TYPEKIND)を取得します。
@return selfの型の種類を文字列で返します。情報が取得できない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj.ole_type # => Class
ole_typeには以下があります。
: Enum
列挙子(0)
: Record
ユーザ定義型(メソッドを持たない構造体)(1)
: Module
モジュール(静的関数やデータだけを保持)(2)
: In... -
WIN32OLE
_ VARIABLE # ole _ type -> String (54376.0) -
変数の型を取得します。
変数の型を取得します。
@return 変数の型名を文字列で返します。型名を文字列に変換できない場合は、
「Unknown Type nn」(nnはバリアント型を示す数値)の形式の文字列
を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.ole_type} #{variabl... -
WIN32OLE
# ole _ type -> WIN32OLE _ TYPE | nil (46018.0) -
WIN32OLE_TYPEオブジェクトを返します。
WIN32OLE_TYPEオブジェクトを返します。
WIN32OLE_TYPEオブジェクトは、WIN32OLEオブジェクトの文書情報と型情
報を保持するオブジェクトです。
@return オブジェクトに関連するWIN32OLE_TYPEオブジェクトを返します。
オブジェクトがドキュメント情報を持たない場合はnilを返します。
excel = WIN32OLE.new('Excel.Application')
tobj = excel.ole_obj_help
@see WIN32OLE_TYPE -
WIN32OLE
_ TYPE # ole _ typelib -> WIN32OLE _ TYPELIB | nil (27922.0) -
この型を登録してある型情報ライブラリ(TypeLib)を取得します。
この型を登録してある型情報ライブラリ(TypeLib)を取得します。
@return この型を登録しているTypeLibをWIN32OLE_TYPELIBオブジェクト
として返します。見つからない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.ole_typelib.name # => 'Microsoft Excel 14.0 Object Library' -
WIN32OLE
_ TYPE # default _ ole _ types -> [WIN32OLE _ TYPE] (27658.0) -
型が持つデフォルトのインターフェイスを取得します。
型が持つデフォルトのインターフェイスを取得します。
default_ole_typesメソッドは、selfがCoClass(コンポーネントクラス)の場
合、そのクラスが実装しているデフォルトのインターフェイスと、サポートし
ていればデフォルトのソースインターフェイスを返します。
@return デフォルトインターフェイスをWIN32OLE_TYPEの配列として返し
ます。デフォルトインターフェイスは、最大でも、クラス操作用のイ
ンターフェイス(OLEオートメーション用)と、イベント用のソースイ
ンターフェイスの2要素です。デフォルトインターフ... -
WIN32OLE
_ TYPE # implemented _ ole _ types -> [WIN32OLE _ TYPE] (27658.0) -
この型が実装するインターフェイスを取得します。
この型が実装するインターフェイスを取得します。
implemented_ole_typesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスが実装しているすべてのインターフェイスを返します。
@return クラスが実装するすべてのインターフェイスをWIN32OLE_TYPEの
配列として返します。この型がインターフェイスを実装しない場合は、
空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。
tobj = WIN32OLE_TYPE.new('Micro... -
WIN32OLE
_ TYPE # source _ ole _ types -> [WIN32OLE _ TYPE] (27658.0) -
型が持つソースインターフェイスを取得します。
型が持つソースインターフェイスを取得します。
source_ole_typesメソッドは、selfがCoClass(コンポーネントクラス)の場合、
そのクラスがサポートするすべてのソースインターフェイス(イベントの通知
元となるインターフェイス)を返します。
ActiveXコントロールのようにイベント(WIN32OLE_EVENT)をサポートし
ているコンポーネントクラスの場合は、このメソッドの呼び出しによりイベン
トインターフェイスを調べることが可能です。
@return ソースインターフェイスをWIN32OLE_TYPEの配列として返します。
ソースインターフェイスを... -
WIN32OLE
_ TYPELIB # ole _ types -> [WIN32OLE _ TYPE] (18643.0) -
TypeLibに格納されているすべての型を取得します。
TypeLibに格納されているすべての型を取得します。
TypeLibに格納されている型には、クラス(CoClass——コンポーネントクラス)
やEnum(列挙子)、構造体などがあります。
@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェ
クトの配列として返します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
classes = tlib.ole_types.map{|k| k.name} # => ["Adjustments... -
WIN32OLE
_ VARIABLE # ole _ type _ detail -> [String] (18394.0) -
変数の型と属性を取得します。
変数の型と属性を取得します。
@return 変数の型と属性を文字列配列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft XML, v5.0', 'tagSTATSTG')
tobj.variables.each do |v|
puts "#{v.ole_type} [#{v.ole_type_detail.join(', ')}] #{v.name}"
end
出力結果
Unknown Type 31 [] pwcsName # => VT_LPWSTR はWIN32OLE::VARIANTで未定義なので変換でき... -
WIN32OLE
_ TYPELIB (18055.0) -
OLEオートメーションサーバの型情報ライブラリ(TypeLib)を操作するための クラスです。
OLEオートメーションサーバの型情報ライブラリ(TypeLib)を操作するための
クラスです。
OLEオートメーションサーバはクライアントに、クラス、インターフェイス、メ
ソッドなどのメタデータを提供するための機構を持ちます。この情報は拡張子
からTLBと呼ばれるライブラリまたはオートメーションサーバのプログラム内の
リソースとして保持され、クライアントからの要求によって参照可能となりま
す。
WIN32OLE_TYPELIBクラスは、TypeLibを操作して各種情報を参照するためのオブ
ジェクトを生成します。
=== サンプルコード
require 'win32ole'
... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (9484.0) -
型が持つソースインターフェイスを取得します。
型が持つソースインターフェイスを取得します。
default_event_sourcesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスがサポートするデフォルトのソースインターフェイス(イ
ベントの通知元となるインターフェイス)を返します。
@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大でも1インターフェイスです。ソースインターフェイスを持
たない場合は空配列を返します。
tobj = ... -
WIN32OLE
_ TYPE . ole _ classes(libname) -> [WIN32OLE _ TYPE] (9358.0) -
TypeLibで定義されているすべての型情報を取得します。
TypeLibで定義されているすべての型情報を取得します。
@param libname 生成するTypeLibのレジストリ上のドキュメント文字列
(WIN32OLE_TYPELIB#name)または
GUID(WIN32OLE_TYPELIB#guid)またはTLBファイル名を
文字列で指定します。
@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェクトの配列として返します。
@raise WIN32OLERuntimeError 引数で指定したTypeLibが... -
WIN32OLE
_ TYPELIB # ole _ classes -> [WIN32OLE _ TYPE] (9343.0) -
TypeLibに格納されているすべての型を取得します。
TypeLibに格納されているすべての型を取得します。
TypeLibに格納されている型には、クラス(CoClass——コンポーネントクラス)
やEnum(列挙子)、構造体などがあります。
@return TypeLibに格納されているすべての型をWIN32OLE_TYPEオブジェ
クトの配列として返します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
classes = tlib.ole_types.map{|k| k.name} # => ["Adjustments... -
WIN32OLE
_ TYPE # guid -> String | nil (9322.0) -
この型のGUID(グローバル一意識別子)を取得します。
この型のGUID(グローバル一意識別子)を取得します。
@return GUIDを文字列で返します。GUIDを持たない型の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
puts tobj.guid # => {00024500-0000-0000-C000-000000000046}
GUIDは、COMのクラス識別子(CLSID)、インターフェイス識別子(IID)など多数の
領域でWindows上のオブジェクトの識別に利用される128ビットの... -
WIN32OLE
_ TYPE # helpcontext -> Integer | nil (9322.0) -
この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得 します。
この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得
します。
@return 型に関連するヘルプコンテキストを整数で返します。ヘルプコンテキ
ストが登録されていない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpcontext # => 131185 -
WIN32OLE
_ TYPE # helpfile -> String | nil (9322.0) -
オブジェクトに関連付けられたヘルプファイルのフルパス名。
オブジェクトに関連付けられたヘルプファイルのフルパス名。
ここで返されたヘルプファイルを表示するには、
WIN32OLE#ole_show_helpメソッドを呼び出します。
オブジェクトがヘルプファイルを持たない場合はnilを返します。
@return オブジェクトに関連付けられたヘルプファイルのフルパス名を文字列で返します。
ヘルプファイルが未定義の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpf... -
WIN32OLE
_ TYPE # helpstring -> String | nil (9322.0) -
型のドキュメント文字列を取得します。
型のドキュメント文字列を取得します。
@return ドキュメント文字列を返します。未定義の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
p tobj.helpstring # => "Web Browser interface"
ドキュメント文字列は、コンテキストヘルプなどに利用可能な型の簡単な説明文です。 -
WIN32OLE
_ TYPE # progid -> String | nil (9322.0) -
selfのPROGIDを取得します。
selfのPROGIDを取得します。
PROGIDは、生成可能なOLEオートメーションサーバのCoClass(コンポーネント
クラス)が持つレジストリ登録名です。WIN32OLE.newの引数に指定して
WIN32OLEオブジェクトを生成できます。
@return selfのPROGIDを文字列で返します。selfがPROGIDを持たない、または
CoClassでない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
p tobj... -
WIN32OLE
_ TYPE # src _ type -> String | nil (9322.0) -
selfが他の型の別名ならば、元の型名を取得します。
selfが他の型の別名ならば、元の型名を取得します。
@return selfが別名ならば元の型名を文字列で返します。別名でなければnilを
返します。
tobj = WIN32OLE_TYPE.new('Microsoft Office 14.0 Object Library', 'MsoRGBType')
p tobj.src_type # => "I4"
この例は、OfficeのMsoRGBType型は符号付き32ビット整数(I4)の別名だとい
うことを示します。 -
WIN32OLE
_ TYPE # variables -> [WIN32OLE _ VARIABLE] (9055.0) -
型が持つ変数を取得します。
型が持つ変数を取得します。
型がEnum(列挙型)やユーザ定義型の場合、メンバ変数の情報を
WIN32OLE_VARIABLEオブジェクトの配列として返します。
@return 型が持つ変数情報をWIN32OLE_VARIABLEの配列として返します。
変数を持たない場合は空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
vars = to... -
WIN32OLE
_ TYPE . progids -> [String] (9055.0) -
システムに登録されているすべてのコンポーネントクラスのPROGIDを取得します。
システムに登録されているすべてのコンポーネントクラスのPROGIDを取得します。
@return システムに登録されているすべてのコンポーネントクラスのPROGIDを
文字列配列で返します。
excel = nil
WIN32OLE_TYPE.progids.each do |pg|
if pg =~ /excel\.application/i # ExcelのPROGIDをバージョン無視で取り出す
excel = WIN32OLE.new(pg)
break
end
end
unless excel
$s... -
WIN32OLE
_ TYPE # ole _ methods -> [WIN32OLE _ METHOD] (9037.0) -
型が持つメソッドのメタデータを取得します。
型が持つメソッドのメタデータを取得します。
@return 型が持つメソッドのメタデータをWIN32OLE_METHODの配列として返します。
メソッドを持たない場合は空配列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
methods = tobj.ole_methods.map {|m| m.name }
# => ['QueryInterface', 'AddRef', 'Release',..... -
WIN32OLE
_ TYPE . typelibs -> [String] (9019.0) -
システムに登録されているすべてのTypeLibのドキュメント文字列を取得します。
システムに登録されているすべてのTypeLibのドキュメント文字列を取得します。
@return システムに登録されているすべてのTypeLibのドキュメント文字列の配
列を返します。
Ruby-1.9.1からは、すべてのTypeLibのドキュメント文字列を取得するには、
WIN32OLE_TYPELIBオブジェクトを利用して、以下のように記述してくだ
さい。
WIN32OLE_TYPELIB.typelibs.map {|t| t.name} -
WIN32OLE
# ole _ obj _ help -> WIN32OLE _ TYPE | nil (718.0) -
WIN32OLE_TYPEオブジェクトを返します。
WIN32OLE_TYPEオブジェクトを返します。
WIN32OLE_TYPEオブジェクトは、WIN32OLEオブジェクトの文書情報と型情
報を保持するオブジェクトです。
@return オブジェクトに関連するWIN32OLE_TYPEオブジェクトを返します。
オブジェクトがドキュメント情報を持たない場合はnilを返します。
excel = WIN32OLE.new('Excel.Application')
tobj = excel.ole_obj_help
@see WIN32OLE_TYPE -
WIN32OLE
_ PARAM # default -> object | nil (358.0) -
パラメータを指定しなかった場合の既定値を取得します。
パラメータを指定しなかった場合の既定値を取得します。
当パラメータが必須パラメータの場合はnilを返します。
@return パラメータを指定しなかった場合の既定値。必須パラメータならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
method.params.each do |param|
if param.default
puts "... -
WIN32OLE
_ VARIABLE # value -> object | nil (358.0) -
変数の値を取得します。
変数の値を取得します。
変数情報によってはenum値のように定数値を持つものがあります。valueメソッ
ドはこのような定数値を返します。
@return この変数が持つ定数値。値を持たない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}=#{variable.value... -
WIN32OLE
_ METHOD # event _ interface -> String | nil (322.0) -
メソッドがイベントの場合、イベントのインターフェイス名を取得します。
メソッドがイベントの場合、イベントのインターフェイス名を取得します。
@return メソッドがイベントであれば、イベントのインターフェイス名を返し
ます。イベントでなければnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event_interface # => WorkbookEvents -
WIN32OLE
_ METHOD # helpcontext -> Integer | nil (322.0) -
メソッドのヘルプコンテキストを取得します。
メソッドのヘルプコンテキストを取得します。
ヘルプコンテキストは、関連するヘルプファイル上のトピック位置を示す整数
値です。
@return ヘルプコンテキストを返します。未定義の場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpcontext # => 65717
WIN32OLE_METHODオブジェクトを引数として、WI... -
WIN32OLE
_ METHOD # helpfile -> String | nil (322.0) -
ヘルプファイルのパス名を取得します。
ヘルプファイルのパス名を取得します。
メソッドにヘルプファイルが関連付けられている場合、該当ヘルプファイルの
パス名を返します。
@return ヘルプファイルのパス名を文字列で返します。ヘルプファイルが未定
義ならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpfile # => C:\...\VBAXL9.CH... -
WIN32OLE
_ METHOD # helpstring -> String | nil (322.0) -
メソッドのヘルプ文字列を取得します。
メソッドのヘルプ文字列を取得します。
helpstringは、IDEがメソッドのバルーンヘルプを表示するような場合に利用可
能な、1行程度でメソッドを説明する文字列です。
@return ヘルプ文字列を返します。未定義ならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
method = WIN32OLE_METHOD.new(tobj, 'Navigate')
puts method.helpstring # => Navigates to a URL o... -
WIN32OLE
_ METHOD # size _ opt _ params -> Integer | nil (322.0) -
オプションパラメータ数を取得します。
オプションパラメータ数を取得します。
@return オプションパラメータ数を整数で返します。メソッドの詳細情報を取
得できない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_opt_params # => 5 -
WIN32OLE
_ METHOD # size _ params -> Integer | nil (322.0) -
パラメータ数を取得します。
パラメータ数を取得します。
@return パラメータ数を整数で返します。メソッドの詳細情報を取得できない
場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_params # => 12 -
WIN32OLE
_ VARIABLE (91.0) -
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションサーバは、定数(WIN32OLE.const_load)、メソッ
ド/プロパティ(WIN32OLE_METHOD)、イベント(WIN32OLE_EVENT)
のほかに変数をクライアントへ提供できます。WIN32OLE_VARIABLEクラスは、サー
バが提供する変数の情報をオブジェクト化します。変数情報にはCOMで決められ
た構造体やユーザ定義型のフィールド情報などがありますが、最も良く利用さ
れるのはenum(列挙型)のメンバ情報です。enumのメンバは定数として利用で
きます。
WIN32OL... -
WIN32OLE
_ METHOD (73.0) -
OLEオートメーションサーバが持つメソッドの情報を提供します。
OLEオートメーションサーバが持つメソッドの情報を提供します。
WIN32OLE_METHODは、WIN32OLE#ole_methodsなどの呼び出しによって返さ
れるオブジェクトで、OLEオートメーションサーバのメソッドの情報(メタデー
タ)を保持します。
=== サンプルコード
excel = WIN32OLE.new('Excel.Application')
excel.ole_methods.each do |method|
if method.visible?
puts <<SIGNATURE
#{method.return_type} ... -
WIN32OLE
_ PARAM # output? -> bool (55.0) -
パラメータがクライアントからの結果を受け取るためのものかを判定します。
パラメータがクライアントからの結果を受け取るためのものかを判定します。
OLEオートメーションのパラメータは、in(クライアントからサーバへ与える。
WIN32OLE_PARAM#input?が真)、out(サーバがクライアントへ与える。
WIN32OLE_PARAM#output?が真)および、inout(クライアントからサーバ
へ与え、サーバがクライアントへ与える)の3種類の方向属性のいずれかを持ち
ます。
output?メソッドはout属性またはinout属性なら真を返します。
@return メソッドの方向属性がoutまたはinoutならば真を返します。
tobj = W... -
WIN32OLE
_ VARIABLE # name -> String (55.0) -
変数名を取得します。
変数名を取得します。
@return 変数名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end -
WIN32OLE
_ VARIABLE # to _ s -> String (55.0) -
変数名を取得します。
変数名を取得します。
@return 変数名を文字列で返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end -
WIN32OLE
_ VARIABLE # variable _ kind -> String (37.0) -
変数の種類(VARKIND)を取得します。
変数の種類(VARKIND)を取得します。
この変数の種類を示す文字列を返します。
@return VARKINDに対応する文字列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.variable_kind}.uniq # => CONSTANT
返送値は以下のいずれかとなります。
: PERINSTANCE
インスタンス毎の変数。構造体やユーザ定義体のフィールド。(0)
: STATI... -
WIN32OLE
_ VARIABLE # varkind -> Integer (37.0) -
変数の種類(VARKIND)を取得します。
変数の種類(VARKIND)を取得します。
この変数の種類を示す数値を返します。
@return VARKINDに対応する数値を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.varkind}.uniq # => 2
数値の意味については、WIN32OLE_VARIABLE#variable_kindの説明を参照してください。 -
WIN32OLE
_ VARIABLE # visible? -> bool (37.0) -
変数の可視性を取得します。
変数の可視性を取得します。
@return publicアクセス可能であれば真を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.visible?}.uniq # => true