instance method Array#to_ptr
to_ptr -> nil | DL::PtrData
[added by dl]to_ptr(type) -> nil | DL::PtrData
[added by dl]-
自身の各要素を指すポインタの配列を生成し、それへのポインタ DL::PtrData を返します。 この返り値には、DL::FREE が free 関数としてセットされています。 自身の長さが 0 なら nil を返します。
self のすべての要素は同じクラスでなければならず、 Integer、Float、String、Data、Nil のいずれかでなければいけません。
要素のクラスが String である場合、各要素は複製されます。
require 'dl/import' ptr = ['a', 'b', 'c'].to_ptr p ptr.size #=> 12 p ptr.to_a('P').map{|s| s.to_s } #=> ["a", "b", "c"]
- [PARAM] type:
- self の要素の型を文字で指定します。DL の型指定子の項を参照して下さい。
- [EXCEPTION] DL::DLTypeError:
- 定められた文字以外を型指定子として与えると発生します。また、与えられた型と自身の要素が一致しないと発生します。
class Array