168件ヒット
[1-100件を表示]
(0.133秒)
クラス
- Delegator (12)
-
Fiddle
:: Pointer (96) - Module (12)
- Object (24)
- WIN32OLE (24)
検索結果
先頭5件
-
Fiddle
:: Pointer # free -> Fiddle :: CFunc (24208.0) -
GC がメモリを解放するのに使用する Fiddle::CFunc オブジェクトを返します。
...GC がメモリを解放するのに使用する Fiddle::CFunc オブジェクトを返します。
これは普通 Fiddle::Pointer#free= や Fiddle::Pointer.new によって設定されます。... -
WIN32OLE
# ole _ free -> () (12244.0) -
selfが参照するCOMオブジェクトを解放します。
...wn::Releaseを呼び出すことで、COMオ
ブジェクトを開放します。ole_freeを呼び出した後は、このオブジェクトに対
する操作は行えません。
excel = WIN32OLE.new('Excel.Application')
excel.ole_free # オブジェクトの解放
excel.Quit #=> Runt......imeError (failed to get Dispatch Interface)
通常は利用されなくなったWIN32OLEオブジェクトはGCのタイミングで自動的に
解放されるため、当メソッドを呼び出す必要はありません。Officeのような外
部プロセスサーバ呼び出し時に、スク......N32OLEがIUnknown::Releaseを呼び出してもオブジェクトが解放されるとは限
りません。
excel = WIN32OLE.new('Excel.Application')
workbook = excel.Workbooks.Open('workbook.xls')
workbook.Close(:SaveChanges => false)
workbook.ole_free
excel.ole_free
# この時点... -
Fiddle
:: Pointer # free=(cfunc) (12202.0) -
GC が自身を解放するのに使う関数を Fiddle::CFunc で指定します。
...GC が自身を解放するのに使う関数を Fiddle::CFunc で指定します。
@param cfunc 自身を解放するのに使われる関数を Fiddle::CFunc か整数で指定します。... -
Delegator
# freeze -> self (12201.0) -
自身を凍結します。
...自身を凍結します。
@see Object#freeze... -
Module
# freeze -> self (12201.0) -
モジュールを凍結(内容の変更を禁止)します。
...。
凍結したモジュールにメソッドの追加など何らかの変更を加えようとした場合に
FrozenError
が発生します。
@see Object#freeze
//emlist[例][ruby]{
module Foo; end
Foo.freeze
module Foo
def foo; end
end # => FrozenError: can't modify frozen module
//}... -
Object
# freeze -> self (12201.0) -
オブジェクトを凍結(内容の変更を禁止)します。
... RuntimeError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり、変数ではありません。代入などで変数の指す
オブジェクトが変化してしまうことは freeze...... freeze が防ぐのは、
`破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
場合は、グローバル変数なら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"......"foo".freeze
a2.replace("bar") # can't modify frozen String (RuntimeError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen?......FrozenError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり、変数ではありません。代入などで変数の指す
オブジェクトが変化してしまうことは freeze......= "foo".freeze
a2.replace("bar") # can't modify frozen String (FrozenError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen?... -
Fiddle
:: Pointer # ptr -> Fiddle :: Pointer (6207.0) -
自身の指す値を Pointer にして返します。
...ointer にして返します。
自身の指す値はポインタであると仮定します。
C 言語におけるポインタのポインタに対する間接参照 *p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'f......iddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s #=> "abc"... -
Fiddle
:: Pointer # ref -> Fiddle :: Pointer (6107.0) -
自身を指す Pointer オブジェクトを返します。 C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
...er オブジェクトを返します。
C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.r......ef
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s #=> "abc"... -
WIN32OLE
# ole _ query _ interface(iid) -> WIN32OLE (6107.0) -
IID(インターフェイスID)を指定してオブジェクトの別のインターフェイスを 持つオブジェクトを取得します。
...ーフェイスを取
得します。
@param iid 取得するインターフェイスのIIDを文字列で指定します。
@return iidパラメータで指定したインターフェイスを持つWIN32OLEオブジェクト
@raise WIN32OLERuntimeError 指定したIIDをオブジェクトが持た......ない場合に通知されます。
ie = WIN32OLE.new('InternetExplorer.Application')
ie_web_app = ie.ole_query_interface('{0002DF05-0000-0000-C000-000000000046}')
上例のie_web_appは、ieと同じインスタンスとなります。
COMの仕様では1つのインターフェイス......持つということを意
味します。当然、それはサーバ実装のバグです。
問題は、C++のvtblアクセスや.NET FrameworkのCOM Interopのために静的型情
報が必要となることです。このため、一度あるインターフェイスを返すことに
決め...