Module: Fiddle::Win32Types

Defined in:
ext/fiddle/lib/fiddle/types.rb

Overview

Adds Windows type aliases to the including class for use with Fiddle::Importer.

The aliases added are:

  • ATOM

  • BOOL

  • BYTE

  • DWORD

  • DWORD32

  • DWORD64

  • HANDLE

  • HDC

  • HINSTANCE

  • HWND

  • LPCSTR

  • LPSTR

  • PBYTE

  • PDWORD

  • PHANDLE

  • PVOID

  • PWORD

  • UCHAR

  • UINT

  • ULONG

  • WORD

Class Method Summary collapse

Class Method Details

.included(m) ⇒ Object

:nodoc:



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'ext/fiddle/lib/fiddle/types.rb', line 29

def included(m) # :nodoc:
  # https://docs.microsoft.com/en-us/windows/win32/winprog/windows-data-types
  m.module_eval{
    typealias "ATOM", "WORD"
    typealias "BOOL", "int"
    typealias "BYTE", "unsigned char"
    typealias "DWORD", "unsigned long"
    typealias "DWORD32", "uint32_t"
    typealias "DWORD64", "uint64_t"
    typealias "HANDLE", "PVOID"
    typealias "HDC", "HANDLE"
    typealias "HINSTANCE", "HANDLE"
    typealias "HWND", "HANDLE"
    typealias "LPCSTR", "const char *"
    typealias "LPSTR", "char *"
    typealias "PBYTE", "BYTE *"
    typealias "PDWORD", "DWORD *"
    typealias "PHANDLE", "HANDLE *"
    typealias "PVOID", "void *"
    typealias "PWORD", "WORD *"
    typealias "UCHAR", "unsigned char"
    typealias "UINT", "unsigned int"
    typealias "ULONG", "unsigned long"
    typealias "WORD", "unsigned short"
  }
end