Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > dl/typesライブラリ

library dl/types

要約

C の型の別名を定義するライブラリです。

DL::Win32TypesDL::BasicTypesModule#include する ことで、DL::Importer#externDL::Importer#struct で 利用できる型が増えます。内部で DL::Importer#typealias を 呼び出しています。

実装の問題があるため、 DL::Importer#dlload を呼びだしてから include してください。

require 'dl/import'
require 'dl/types'

module M
  extend DL::Importer
  dlload "libc.so.6" # include の前に dlload を呼ぶ
  include DL::BasicTypes
end

# uint は DL::BasicTypes によって定義された型で、unsigned int の別名
p(M.sizeof("uint") == M.sizeof("unsigned int"))

モジュール

DL::BasicTypes

よく使われる型の別名を定義するモジュールです。

DL::Win32Types

Windows 用の型の別名を定義するモジュールです。