kind=added
names=to_ptr
visibility=public

--- to_ptr          -> nil | DL::PtrData 
--- to_ptr(type)    -> nil | DL::PtrData

自身の各要素を指すポインタの配列を生成し、それへのポインタ [[c:DL::PtrData]] を返します。
この返り値には、[[m: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 の要素の型を文字で指定します。[[c:DL]] の型指定子の項を参照して下さい。

@raise DL::DLTypeError 定められた文字以外を型指定子として与えると発生します。また、与えられた型と自身の要素が一致しないと発生します。

