ffi 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of ffi might be problematic. Click here for more details.

Files changed (305) hide show
  1. data/README.rdoc +19 -0
  2. data/Rakefile +65 -55
  3. data/ext/{AbstractMemory.c → ffi_c/AbstractMemory.c} +67 -40
  4. data/ext/{AbstractMemory.h → ffi_c/AbstractMemory.h} +10 -8
  5. data/ext/{AutoPointer.c → ffi_c/AutoPointer.c} +17 -8
  6. data/ext/{AutoPointer.h → ffi_c/AutoPointer.h} +0 -0
  7. data/ext/ffi_c/Buffer.c +136 -0
  8. data/ext/{Callback.c → ffi_c/Callback.c} +60 -35
  9. data/ext/{Callback.h → ffi_c/Callback.h} +1 -7
  10. data/ext/{Invoker.c → ffi_c/Invoker.c} +472 -102
  11. data/ext/ffi_c/MemoryPointer.c +146 -0
  12. data/ext/{MemoryPointer.h → ffi_c/MemoryPointer.h} +2 -7
  13. data/ext/ffi_c/NativeLibrary.c +149 -0
  14. data/ext/{NativeLibrary.h → ffi_c/NativeLibrary.h} +0 -0
  15. data/ext/ffi_c/NullPointer.c +104 -0
  16. data/ext/{Platform.c → ffi_c/Platform.c} +0 -0
  17. data/ext/{Platform.h → ffi_c/Platform.h} +0 -7
  18. data/ext/{Pointer.c → ffi_c/Pointer.c} +35 -15
  19. data/ext/{Pointer.h → ffi_c/Pointer.h} +4 -2
  20. data/ext/ffi_c/Struct.c +542 -0
  21. data/ext/ffi_c/Struct.h +26 -0
  22. data/ext/ffi_c/Types.c +76 -0
  23. data/ext/{Types.h → ffi_c/Types.h} +23 -28
  24. data/ext/{compat.h → ffi_c/compat.h} +2 -2
  25. data/ext/{extconf.rb → ffi_c/extconf.rb} +12 -7
  26. data/ext/ffi_c/ffi.c +99 -0
  27. data/ext/ffi_c/ffi.mk +23 -0
  28. data/ext/{libffi.darwin.mk → ffi_c/libffi.darwin.mk} +0 -0
  29. data/ext/ffi_c/libffi.mk +11 -0
  30. data/ext/{libffi → ffi_c/libffi}/ChangeLog +0 -0
  31. data/ext/{libffi → ffi_c/libffi}/ChangeLog.libffi +0 -0
  32. data/ext/{libffi → ffi_c/libffi}/ChangeLog.libgcj +0 -0
  33. data/ext/{libffi → ffi_c/libffi}/ChangeLog.v1 +0 -0
  34. data/ext/{libffi → ffi_c/libffi}/LICENSE +0 -0
  35. data/ext/{libffi → ffi_c/libffi}/Makefile.am +0 -0
  36. data/ext/{libffi → ffi_c/libffi}/Makefile.in +0 -0
  37. data/ext/{libffi → ffi_c/libffi}/README +0 -0
  38. data/ext/{libffi → ffi_c/libffi}/TODO +0 -0
  39. data/ext/{libffi → ffi_c/libffi}/acinclude.m4 +0 -0
  40. data/ext/{libffi → ffi_c/libffi}/aclocal.m4 +0 -0
  41. data/ext/{libffi → ffi_c/libffi}/compile +0 -0
  42. data/ext/{libffi → ffi_c/libffi}/config.guess +0 -0
  43. data/ext/{libffi → ffi_c/libffi}/config.sub +0 -0
  44. data/ext/{libffi → ffi_c/libffi}/configure +0 -0
  45. data/ext/{libffi → ffi_c/libffi}/configure.ac +0 -0
  46. data/ext/{libffi → ffi_c/libffi}/configure.host +0 -0
  47. data/ext/{libffi → ffi_c/libffi}/depcomp +0 -0
  48. data/ext/{libffi → ffi_c/libffi}/doc/libffi.info +0 -0
  49. data/ext/{libffi → ffi_c/libffi}/doc/libffi.texi +0 -0
  50. data/ext/{libffi → ffi_c/libffi}/doc/stamp-vti +0 -0
  51. data/ext/{libffi → ffi_c/libffi}/doc/version.texi +0 -0
  52. data/ext/{libffi → ffi_c/libffi}/fficonfig.h.in +0 -0
  53. data/ext/{libffi → ffi_c/libffi}/include/Makefile.am +0 -0
  54. data/ext/{libffi → ffi_c/libffi}/include/Makefile.in +0 -0
  55. data/ext/{libffi → ffi_c/libffi}/include/ffi.h.in +0 -0
  56. data/ext/{libffi → ffi_c/libffi}/include/ffi_common.h +0 -0
  57. data/ext/{libffi → ffi_c/libffi}/install-sh +0 -0
  58. data/ext/{libffi → ffi_c/libffi}/libffi.pc.in +0 -0
  59. data/ext/{libffi → ffi_c/libffi}/libtool-version +0 -0
  60. data/ext/{libffi → ffi_c/libffi}/ltcf-c.sh +0 -0
  61. data/ext/{libffi → ffi_c/libffi}/ltcf-cxx.sh +0 -0
  62. data/ext/{libffi → ffi_c/libffi}/ltcf-gcj.sh +0 -0
  63. data/ext/{libffi → ffi_c/libffi}/ltconfig +0 -0
  64. data/ext/{libffi → ffi_c/libffi}/ltmain.sh +0 -0
  65. data/ext/{libffi → ffi_c/libffi}/man/Makefile.am +0 -0
  66. data/ext/{libffi → ffi_c/libffi}/man/Makefile.in +0 -0
  67. data/ext/{libffi → ffi_c/libffi}/man/ffi.3 +0 -0
  68. data/ext/{libffi → ffi_c/libffi}/man/ffi_call.3 +0 -0
  69. data/ext/{libffi → ffi_c/libffi}/man/ffi_prep_cif.3 +0 -0
  70. data/ext/{libffi → ffi_c/libffi}/mdate-sh +0 -0
  71. data/ext/{libffi → ffi_c/libffi}/missing +0 -0
  72. data/ext/{libffi → ffi_c/libffi}/mkinstalldirs +0 -0
  73. data/ext/{libffi → ffi_c/libffi}/src/alpha/ffi.c +0 -0
  74. data/ext/{libffi → ffi_c/libffi}/src/alpha/ffitarget.h +0 -0
  75. data/ext/{libffi → ffi_c/libffi}/src/alpha/osf.S +0 -0
  76. data/ext/{libffi → ffi_c/libffi}/src/arm/ffi.c +0 -0
  77. data/ext/{libffi → ffi_c/libffi}/src/arm/ffitarget.h +0 -0
  78. data/ext/{libffi → ffi_c/libffi}/src/arm/sysv.S +0 -0
  79. data/ext/{libffi → ffi_c/libffi}/src/closures.c +0 -0
  80. data/ext/{libffi → ffi_c/libffi}/src/cris/ffi.c +0 -0
  81. data/ext/{libffi → ffi_c/libffi}/src/cris/ffitarget.h +0 -0
  82. data/ext/{libffi → ffi_c/libffi}/src/cris/sysv.S +0 -0
  83. data/ext/{libffi → ffi_c/libffi}/src/debug.c +0 -0
  84. data/ext/{libffi → ffi_c/libffi}/src/dlmalloc.c +0 -0
  85. data/ext/{libffi → ffi_c/libffi}/src/frv/eabi.S +0 -0
  86. data/ext/{libffi → ffi_c/libffi}/src/frv/ffi.c +0 -0
  87. data/ext/{libffi → ffi_c/libffi}/src/frv/ffitarget.h +0 -0
  88. data/ext/{libffi → ffi_c/libffi}/src/ia64/ffi.c +0 -0
  89. data/ext/{libffi → ffi_c/libffi}/src/ia64/ffitarget.h +0 -0
  90. data/ext/{libffi → ffi_c/libffi}/src/ia64/ia64_flags.h +0 -0
  91. data/ext/{libffi → ffi_c/libffi}/src/ia64/unix.S +0 -0
  92. data/ext/{libffi → ffi_c/libffi}/src/java_raw_api.c +0 -0
  93. data/ext/{libffi → ffi_c/libffi}/src/m32r/ffi.c +0 -0
  94. data/ext/{libffi → ffi_c/libffi}/src/m32r/ffitarget.h +0 -0
  95. data/ext/{libffi → ffi_c/libffi}/src/m32r/sysv.S +0 -0
  96. data/ext/{libffi → ffi_c/libffi}/src/m68k/ffi.c +0 -0
  97. data/ext/{libffi → ffi_c/libffi}/src/m68k/ffitarget.h +0 -0
  98. data/ext/{libffi → ffi_c/libffi}/src/m68k/sysv.S +0 -0
  99. data/ext/{libffi → ffi_c/libffi}/src/mips/ffi.c +0 -0
  100. data/ext/{libffi → ffi_c/libffi}/src/mips/ffitarget.h +0 -0
  101. data/ext/{libffi → ffi_c/libffi}/src/mips/n32.S +0 -0
  102. data/ext/{libffi → ffi_c/libffi}/src/mips/o32.S +0 -0
  103. data/ext/{libffi → ffi_c/libffi}/src/pa/ffi.c +0 -0
  104. data/ext/{libffi → ffi_c/libffi}/src/pa/ffitarget.h +0 -0
  105. data/ext/{libffi → ffi_c/libffi}/src/pa/hpux32.S +0 -0
  106. data/ext/{libffi → ffi_c/libffi}/src/pa/linux.S +0 -0
  107. data/ext/{libffi → ffi_c/libffi}/src/powerpc/aix.S +0 -0
  108. data/ext/{libffi → ffi_c/libffi}/src/powerpc/aix_closure.S +0 -0
  109. data/ext/{libffi → ffi_c/libffi}/src/powerpc/asm.h +0 -0
  110. data/ext/{libffi → ffi_c/libffi}/src/powerpc/darwin.S +0 -0
  111. data/ext/{libffi → ffi_c/libffi}/src/powerpc/darwin_closure.S +0 -0
  112. data/ext/{libffi → ffi_c/libffi}/src/powerpc/ffi.c +0 -0
  113. data/ext/{libffi → ffi_c/libffi}/src/powerpc/ffi_darwin.c +0 -0
  114. data/ext/{libffi → ffi_c/libffi}/src/powerpc/ffitarget.h +0 -0
  115. data/ext/{libffi → ffi_c/libffi}/src/powerpc/linux64.S +0 -0
  116. data/ext/{libffi → ffi_c/libffi}/src/powerpc/linux64_closure.S +0 -0
  117. data/ext/{libffi → ffi_c/libffi}/src/powerpc/ppc_closure.S +0 -0
  118. data/ext/{libffi → ffi_c/libffi}/src/powerpc/sysv.S +0 -0
  119. data/ext/{libffi → ffi_c/libffi}/src/prep_cif.c +0 -0
  120. data/ext/{libffi → ffi_c/libffi}/src/raw_api.c +0 -0
  121. data/ext/{libffi → ffi_c/libffi}/src/s390/ffi.c +0 -0
  122. data/ext/{libffi → ffi_c/libffi}/src/s390/ffitarget.h +0 -0
  123. data/ext/{libffi → ffi_c/libffi}/src/s390/sysv.S +0 -0
  124. data/ext/{libffi → ffi_c/libffi}/src/sh/ffi.c +0 -0
  125. data/ext/{libffi → ffi_c/libffi}/src/sh/ffitarget.h +0 -0
  126. data/ext/{libffi → ffi_c/libffi}/src/sh/sysv.S +0 -0
  127. data/ext/{libffi → ffi_c/libffi}/src/sh64/ffi.c +0 -0
  128. data/ext/{libffi → ffi_c/libffi}/src/sh64/ffitarget.h +0 -0
  129. data/ext/{libffi → ffi_c/libffi}/src/sh64/sysv.S +0 -0
  130. data/ext/{libffi → ffi_c/libffi}/src/sparc/ffi.c +0 -0
  131. data/ext/{libffi → ffi_c/libffi}/src/sparc/ffitarget.h +0 -0
  132. data/ext/{libffi → ffi_c/libffi}/src/sparc/v8.S +0 -0
  133. data/ext/{libffi → ffi_c/libffi}/src/sparc/v9.S +0 -0
  134. data/ext/{libffi → ffi_c/libffi}/src/types.c +0 -0
  135. data/ext/{libffi → ffi_c/libffi}/src/x86/darwin.S +0 -0
  136. data/ext/{libffi → ffi_c/libffi}/src/x86/darwin64.S +0 -0
  137. data/ext/{libffi → ffi_c/libffi}/src/x86/ffi.c +0 -0
  138. data/ext/{libffi → ffi_c/libffi}/src/x86/ffi64.c +0 -0
  139. data/ext/{libffi → ffi_c/libffi}/src/x86/ffitarget.h +0 -0
  140. data/ext/{libffi → ffi_c/libffi}/src/x86/freebsd.S +0 -0
  141. data/ext/{libffi → ffi_c/libffi}/src/x86/sysv.S +0 -0
  142. data/ext/{libffi → ffi_c/libffi}/src/x86/unix64.S +0 -0
  143. data/ext/{libffi → ffi_c/libffi}/src/x86/win32.S +0 -0
  144. data/ext/{libffi → ffi_c/libffi}/testsuite/Makefile.am +0 -0
  145. data/ext/{libffi → ffi_c/libffi}/testsuite/Makefile.in +0 -0
  146. data/ext/{libffi → ffi_c/libffi}/testsuite/config/default.exp +0 -0
  147. data/ext/{libffi → ffi_c/libffi}/testsuite/lib/libffi-dg.exp +0 -0
  148. data/ext/{libffi → ffi_c/libffi}/testsuite/lib/target-libpath.exp +0 -0
  149. data/ext/{libffi → ffi_c/libffi}/testsuite/lib/wrapper.exp +0 -0
  150. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/call.exp +0 -0
  151. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn0.c +0 -0
  152. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn1.c +0 -0
  153. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn2.c +0 -0
  154. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn3.c +0 -0
  155. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn4.c +0 -0
  156. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn5.c +0 -0
  157. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_fn6.c +0 -0
  158. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/closure_stdcall.c +0 -0
  159. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_12byte.c +0 -0
  160. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_16byte.c +0 -0
  161. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_18byte.c +0 -0
  162. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_19byte.c +0 -0
  163. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_1_1byte.c +0 -0
  164. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_20byte.c +0 -0
  165. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_20byte1.c +0 -0
  166. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_24byte.c +0 -0
  167. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_2byte.c +0 -0
  168. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_3_1byte.c +0 -0
  169. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_3byte1.c +0 -0
  170. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_3byte2.c +0 -0
  171. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_4_1byte.c +0 -0
  172. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_4byte.c +0 -0
  173. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_5_1_byte.c +0 -0
  174. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_5byte.c +0 -0
  175. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_64byte.c +0 -0
  176. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_6_1_byte.c +0 -0
  177. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_6byte.c +0 -0
  178. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_7_1_byte.c +0 -0
  179. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_7byte.c +0 -0
  180. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_8byte.c +0 -0
  181. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_9byte1.c +0 -0
  182. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_9byte2.c +0 -0
  183. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_double.c +0 -0
  184. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_float.c +0 -0
  185. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_longdouble.c +0 -0
  186. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_pointer.c +0 -0
  187. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_sint16.c +0 -0
  188. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_sint32.c +0 -0
  189. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_sint64.c +0 -0
  190. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_uint16.c +0 -0
  191. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_uint32.c +0 -0
  192. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_align_uint64.c +0 -0
  193. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_double.c +0 -0
  194. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_float.c +0 -0
  195. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_schar.c +0 -0
  196. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_sshort.c +0 -0
  197. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_sshortchar.c +0 -0
  198. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_uchar.c +0 -0
  199. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_ushort.c +0 -0
  200. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_multi_ushortchar.c +0 -0
  201. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_schar.c +0 -0
  202. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_sint.c +0 -0
  203. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_sshort.c +0 -0
  204. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_uchar.c +0 -0
  205. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_uint.c +0 -0
  206. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_ulonglong.c +0 -0
  207. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/cls_ushort.c +0 -0
  208. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/ffitest.h +0 -0
  209. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/float.c +0 -0
  210. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/float1.c +0 -0
  211. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/float2.c +0 -0
  212. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/float3.c +0 -0
  213. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/float4.c +0 -0
  214. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/many.c +0 -0
  215. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/many_win32.c +0 -0
  216. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/negint.c +0 -0
  217. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct.c +0 -0
  218. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct1.c +0 -0
  219. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct10.c +0 -0
  220. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct2.c +0 -0
  221. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct3.c +0 -0
  222. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct4.c +0 -0
  223. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct5.c +0 -0
  224. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct6.c +0 -0
  225. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct7.c +0 -0
  226. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct8.c +0 -0
  227. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/nested_struct9.c +0 -0
  228. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/problem1.c +0 -0
  229. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/promotion.c +0 -0
  230. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/pyobjc-tc.c +0 -0
  231. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_dbl.c +0 -0
  232. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_dbl1.c +0 -0
  233. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_dbl2.c +0 -0
  234. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_fl.c +0 -0
  235. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_fl1.c +0 -0
  236. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_fl2.c +0 -0
  237. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_fl3.c +0 -0
  238. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_ldl.c +0 -0
  239. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_ll.c +0 -0
  240. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_ll1.c +0 -0
  241. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_sc.c +0 -0
  242. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_sl.c +0 -0
  243. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_uc.c +0 -0
  244. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/return_ul.c +0 -0
  245. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/strlen.c +0 -0
  246. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/strlen_win32.c +0 -0
  247. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct1.c +0 -0
  248. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct2.c +0 -0
  249. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct3.c +0 -0
  250. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct4.c +0 -0
  251. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct5.c +0 -0
  252. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct6.c +0 -0
  253. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct7.c +0 -0
  254. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct8.c +0 -0
  255. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.call/struct9.c +0 -0
  256. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.special/ffitestcxx.h +0 -0
  257. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.special/special.exp +0 -0
  258. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.special/unwindtest.cc +0 -0
  259. data/ext/{libffi → ffi_c/libffi}/testsuite/libffi.special/unwindtest_ffi_call.cc +0 -0
  260. data/ext/{libffi → ffi_c/libffi}/texinfo.tex +0 -0
  261. data/ext/{rbffi.h → ffi_c/rbffi.h} +1 -8
  262. data/lib/ffi/autopointer.rb +7 -7
  263. data/lib/ffi/buffer.rb +0 -25
  264. data/lib/ffi/ffi.rb +1 -0
  265. data/lib/ffi/library.rb +103 -37
  266. data/lib/ffi/memorypointer.rb +25 -28
  267. data/lib/ffi/platform.rb +2 -2
  268. data/lib/ffi/pointer.rb +21 -7
  269. data/lib/ffi/struct.rb +161 -179
  270. data/lib/ffi/types.rb +3 -3
  271. data/lib/ffi/union.rb +17 -0
  272. data/nbproject/configurations.xml +98 -88
  273. data/samples/hello.rb +1 -2
  274. data/samples/sample_helper.rb +6 -0
  275. data/{specs → spec/ffi}/buffer_spec.rb +0 -0
  276. data/{specs → spec/ffi}/callback_spec.rb +114 -89
  277. data/{specs → spec/ffi}/errno_spec.rb +0 -0
  278. data/spec/ffi/library_spec.rb +144 -0
  279. data/{specs → spec/ffi}/managed_struct_spec.rb +12 -1
  280. data/{specs → spec/ffi}/number_spec.rb +34 -16
  281. data/{specs → spec/ffi}/pointer_spec.rb +46 -2
  282. data/{specs → spec/ffi}/rbx/attach_function_spec.rb +2 -1
  283. data/{specs → spec/ffi}/rbx/memory_pointer_spec.rb +19 -19
  284. data/{specs → spec/ffi}/rbx/spec_helper.rb +0 -0
  285. data/{specs → spec/ffi}/rbx/struct_spec.rb +0 -0
  286. data/spec/ffi/spec_helper.rb +13 -0
  287. data/{specs → spec/ffi}/string_spec.rb +8 -0
  288. data/spec/ffi/struct_spec.rb +453 -0
  289. data/{specs → spec/ffi}/typedef_spec.rb +3 -3
  290. data/spec/ffi/union_spec.rb +60 -0
  291. data/{specs → spec/ffi}/variadic_spec.rb +0 -0
  292. data/spec/spec.opts +4 -0
  293. metadata +356 -334
  294. data/README +0 -0
  295. data/ext/Buffer.c +0 -98
  296. data/ext/MemoryPointer.c +0 -99
  297. data/ext/NativeLibrary.c +0 -90
  298. data/ext/Types.c +0 -76
  299. data/ext/ffi.c +0 -64
  300. data/ext/ffi.mk +0 -24
  301. data/ext/libffi.mk +0 -10
  302. data/gen/Rakefile +0 -12
  303. data/specs/library_spec.rb +0 -55
  304. data/specs/spec_helper.rb +0 -9
  305. data/specs/struct_spec.rb +0 -223
@@ -5,9 +5,9 @@ describe "Custom type definitions" do
5
5
  extend FFI::Library
6
6
  ffi_lib TestLibrary::PATH
7
7
  typedef :uint, :fubar_t
8
- attach_function :ret_u_int32_t, [ :fubar_t ], :fubar_t
8
+ attach_function :ret_u32, [ :fubar_t ], :fubar_t
9
9
  end
10
- CustomTypedef.ret_u_int32_t(0x12345678).should == 0x12345678
10
+ CustomTypedef.ret_u32(0x12345678).should == 0x12345678
11
11
  end
12
12
  it "variadic invoker with custom typedef" do
13
13
  module VariadicCustomTypedef
@@ -18,7 +18,7 @@ describe "Custom type definitions" do
18
18
  end
19
19
  buf = FFI::Buffer.new :uint, 10
20
20
  VariadicCustomTypedef.pack_varargs(buf, "i", :fubar_t, 0x12345678)
21
- buf.get_uint(0).should == 0x12345678
21
+ buf.get_int64(0).should == 0x12345678
22
22
  end
23
23
  it "Callback with custom typedef parameter" do
24
24
  module CallbackCustomTypedef
@@ -0,0 +1,60 @@
1
+ require File.expand_path(File.join(File.dirname(__FILE__), "spec_helper"))
2
+
3
+ module LibTest
4
+ Types = {
5
+ 's8' => [:char, :c, 1],
6
+ 's16' => [:short, :s, 0xff0],
7
+ 's32' => [:int, :i, 0xff00],
8
+ 's64' => [:long_long, :j, 0xffff00],
9
+ 'long' => [:long, :l, 0xffff],
10
+ 'f32' => [:float, :f, 1.0001],
11
+ 'f64' => [:double, :d, 1.000000001]
12
+ }
13
+ class TestUnion < FFI::Union
14
+ layout( :a, [:char, 10],
15
+ :i, :int,
16
+ :f, :float,
17
+ :d, :double,
18
+ :s, :short,
19
+ :l, :long,
20
+ :j, :long_long,
21
+ :c, :char )
22
+ end
23
+ Types.keys.each do |k|
24
+ attach_function "union_align_#{k}", [ :pointer ], Types[k][0]
25
+ attach_function "union_make_union_with_#{k}", [ Types[k][0] ], :pointer
26
+ end
27
+ attach_function :union_size, [], :uint
28
+ end
29
+
30
+ describe 'Union' do
31
+ before do
32
+ @u = LibTest::TestUnion.new
33
+ end
34
+ it 'should place all the fields at offset 0' do
35
+ LibTest::TestUnion.members.all? { |m| LibTest::TestUnion.offset_of(m) == 0 }.should be_true
36
+ end
37
+ LibTest::Types.each do |k, type|
38
+ it "should correctly align/write a #{type[0]} value" do
39
+ @u[type[1]] = type[2]
40
+ if k == 'f32' or k == 'f64'
41
+ (@u[type[1]] - LibTest.send("union_align_#{k}", @u.to_ptr)).abs.should < 0.00001
42
+ else
43
+ @u[type[1]].should == LibTest.send("union_align_#{k}", @u.to_ptr)
44
+ end
45
+ end
46
+ end
47
+ LibTest::Types.each do |k, type|
48
+ it "should read a #{type[0]} value from memory" do
49
+ @u = LibTest::TestUnion.new(LibTest.send("union_make_union_with_#{k}", type[2]))
50
+ if k == 'f32' or k == 'f64'
51
+ (@u[type[1]] - type[2]).abs.should < 0.00001
52
+ else
53
+ @u[type[1]].should == type[2]
54
+ end
55
+ end
56
+ end
57
+ it 'should return a size equals to the size of the biggest field' do
58
+ LibTest::TestUnion.size.should == LibTest.union_size
59
+ end
60
+ end
File without changes
@@ -0,0 +1,4 @@
1
+ --color
2
+ --format
3
+ specdoc
4
+
metadata CHANGED
@@ -1,375 +1,397 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wayne Meissner
8
- autorequire: ffi
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-12-03 00:00:00 +10:00
12
+ date: 2009-03-19 00:00:00 +10:00
13
13
  default_executable:
14
- dependencies: []
15
-
16
- description: A Ruby foreign function interface (compatible with Rubinius and JRuby FFI)
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: bones
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 2.4.2
24
+ version:
25
+ description: A Ruby foreign function interface
17
26
  email: wmeissner@gmail.com
18
27
  executables: []
19
28
 
20
29
  extensions:
21
- - ext/extconf.rb
22
- - gen/Rakefile
30
+ - ext/ffi_c/extconf.rb
23
31
  extra_rdoc_files:
24
- - README
25
- - LICENSE
32
+ - README.rdoc
33
+ - lib/ffi
34
+ - lib/ffi/tools
26
35
  files:
27
36
  - LICENSE
28
- - README
37
+ - README.rdoc
29
38
  - Rakefile
30
- - ext/rbffi.h
31
- - ext/AbstractMemory.c
32
- - ext/Buffer.c
33
- - ext/Platform.h
34
- - ext/Types.c
35
- - ext/Pointer.c
36
- - ext/libffi.mk
37
- - ext/Types.h
38
- - ext/libffi
39
- - ext/libffi/LICENSE
40
- - ext/libffi/Makefile.in
41
- - ext/libffi/mkinstalldirs
42
- - ext/libffi/ltcf-c.sh
43
- - ext/libffi/ltcf-cxx.sh
44
- - ext/libffi/configure.host
45
- - ext/libffi/libffi.pc.in
46
- - ext/libffi/doc
47
- - ext/libffi/doc/version.texi
48
- - ext/libffi/doc/libffi.info
49
- - ext/libffi/doc/libffi.texi
50
- - ext/libffi/doc/stamp-vti
51
- - ext/libffi/ChangeLog.v1
52
- - ext/libffi/ChangeLog.libffi
53
- - ext/libffi/install-sh
54
- - ext/libffi/compile
55
- - ext/libffi/config.guess
56
- - ext/libffi/ChangeLog.libgcj
57
- - ext/libffi/Makefile.am
58
- - ext/libffi/aclocal.m4
59
- - ext/libffi/include
60
- - ext/libffi/include/Makefile.in
61
- - ext/libffi/include/Makefile.am
62
- - ext/libffi/include/ffi.h.in
63
- - ext/libffi/include/ffi_common.h
64
- - ext/libffi/ChangeLog
65
- - ext/libffi/texinfo.tex
66
- - ext/libffi/fficonfig.h.in
67
- - ext/libffi/missing
68
- - ext/libffi/configure
69
- - ext/libffi/acinclude.m4
70
- - ext/libffi/TODO
71
- - ext/libffi/libtool-version
72
- - ext/libffi/src
73
- - ext/libffi/src/pa
74
- - ext/libffi/src/pa/linux.S
75
- - ext/libffi/src/pa/ffi.c
76
- - ext/libffi/src/pa/hpux32.S
77
- - ext/libffi/src/pa/ffitarget.h
78
- - ext/libffi/src/raw_api.c
79
- - ext/libffi/src/java_raw_api.c
80
- - ext/libffi/src/types.c
81
- - ext/libffi/src/sparc
82
- - ext/libffi/src/sparc/v9.S
83
- - ext/libffi/src/sparc/ffi.c
84
- - ext/libffi/src/sparc/v8.S
85
- - ext/libffi/src/sparc/ffitarget.h
86
- - ext/libffi/src/powerpc
87
- - ext/libffi/src/powerpc/asm.h
88
- - ext/libffi/src/powerpc/ppc_closure.S
89
- - ext/libffi/src/powerpc/darwin.S
90
- - ext/libffi/src/powerpc/linux64.S
91
- - ext/libffi/src/powerpc/aix.S
92
- - ext/libffi/src/powerpc/sysv.S
93
- - ext/libffi/src/powerpc/aix_closure.S
94
- - ext/libffi/src/powerpc/ffi.c
95
- - ext/libffi/src/powerpc/linux64_closure.S
96
- - ext/libffi/src/powerpc/ffitarget.h
97
- - ext/libffi/src/powerpc/ffi_darwin.c
98
- - ext/libffi/src/powerpc/darwin_closure.S
99
- - ext/libffi/src/ia64
100
- - ext/libffi/src/ia64/ia64_flags.h
101
- - ext/libffi/src/ia64/unix.S
102
- - ext/libffi/src/ia64/ffi.c
103
- - ext/libffi/src/ia64/ffitarget.h
104
- - ext/libffi/src/closures.c
105
- - ext/libffi/src/debug.c
106
- - ext/libffi/src/x86
107
- - ext/libffi/src/x86/freebsd.S
108
- - ext/libffi/src/x86/unix64.S
109
- - ext/libffi/src/x86/darwin.S
110
- - ext/libffi/src/x86/sysv.S
111
- - ext/libffi/src/x86/ffi.c
112
- - ext/libffi/src/x86/darwin64.S
113
- - ext/libffi/src/x86/win32.S
114
- - ext/libffi/src/x86/ffitarget.h
115
- - ext/libffi/src/x86/ffi64.c
116
- - ext/libffi/src/sh
117
- - ext/libffi/src/sh/sysv.S
118
- - ext/libffi/src/sh/ffi.c
119
- - ext/libffi/src/sh/ffitarget.h
120
- - ext/libffi/src/sh64
121
- - ext/libffi/src/sh64/sysv.S
122
- - ext/libffi/src/sh64/ffi.c
123
- - ext/libffi/src/sh64/ffitarget.h
124
- - ext/libffi/src/frv
125
- - ext/libffi/src/frv/eabi.S
126
- - ext/libffi/src/frv/ffi.c
127
- - ext/libffi/src/frv/ffitarget.h
128
- - ext/libffi/src/arm
129
- - ext/libffi/src/arm/sysv.S
130
- - ext/libffi/src/arm/ffi.c
131
- - ext/libffi/src/arm/ffitarget.h
132
- - ext/libffi/src/m32r
133
- - ext/libffi/src/m32r/sysv.S
134
- - ext/libffi/src/m32r/ffi.c
135
- - ext/libffi/src/m32r/ffitarget.h
136
- - ext/libffi/src/cris
137
- - ext/libffi/src/cris/sysv.S
138
- - ext/libffi/src/cris/ffi.c
139
- - ext/libffi/src/cris/ffitarget.h
140
- - ext/libffi/src/s390
141
- - ext/libffi/src/s390/sysv.S
142
- - ext/libffi/src/s390/ffi.c
143
- - ext/libffi/src/s390/ffitarget.h
144
- - ext/libffi/src/alpha
145
- - ext/libffi/src/alpha/osf.S
146
- - ext/libffi/src/alpha/ffi.c
147
- - ext/libffi/src/alpha/ffitarget.h
148
- - ext/libffi/src/mips
149
- - ext/libffi/src/mips/ffi.c
150
- - ext/libffi/src/mips/o32.S
151
- - ext/libffi/src/mips/n32.S
152
- - ext/libffi/src/mips/ffitarget.h
153
- - ext/libffi/src/dlmalloc.c
154
- - ext/libffi/src/m68k
155
- - ext/libffi/src/m68k/sysv.S
156
- - ext/libffi/src/m68k/ffi.c
157
- - ext/libffi/src/m68k/ffitarget.h
158
- - ext/libffi/src/prep_cif.c
159
- - ext/libffi/man
160
- - ext/libffi/man/Makefile.in
161
- - ext/libffi/man/ffi_prep_cif.3
162
- - ext/libffi/man/ffi.3
163
- - ext/libffi/man/Makefile.am
164
- - ext/libffi/man/ffi_call.3
165
- - ext/libffi/ltconfig
166
- - ext/libffi/ltcf-gcj.sh
167
- - ext/libffi/testsuite
168
- - ext/libffi/testsuite/Makefile.in
169
- - ext/libffi/testsuite/lib
170
- - ext/libffi/testsuite/lib/libffi-dg.exp
171
- - ext/libffi/testsuite/lib/wrapper.exp
172
- - ext/libffi/testsuite/lib/target-libpath.exp
173
- - ext/libffi/testsuite/config
174
- - ext/libffi/testsuite/config/default.exp
175
- - ext/libffi/testsuite/Makefile.am
176
- - ext/libffi/testsuite/libffi.special
177
- - ext/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc
178
- - ext/libffi/testsuite/libffi.special/unwindtest.cc
179
- - ext/libffi/testsuite/libffi.special/special.exp
180
- - ext/libffi/testsuite/libffi.special/ffitestcxx.h
181
- - ext/libffi/testsuite/libffi.call
182
- - ext/libffi/testsuite/libffi.call/return_fl2.c
183
- - ext/libffi/testsuite/libffi.call/struct9.c
184
- - ext/libffi/testsuite/libffi.call/promotion.c
185
- - ext/libffi/testsuite/libffi.call/cls_align_double.c
186
- - ext/libffi/testsuite/libffi.call/return_dbl.c
187
- - ext/libffi/testsuite/libffi.call/cls_ulonglong.c
188
- - ext/libffi/testsuite/libffi.call/many_win32.c
189
- - ext/libffi/testsuite/libffi.call/nested_struct1.c
190
- - ext/libffi/testsuite/libffi.call/cls_12byte.c
191
- - ext/libffi/testsuite/libffi.call/nested_struct10.c
192
- - ext/libffi/testsuite/libffi.call/cls_24byte.c
193
- - ext/libffi/testsuite/libffi.call/many.c
194
- - ext/libffi/testsuite/libffi.call/cls_3_1byte.c
195
- - ext/libffi/testsuite/libffi.call/cls_6byte.c
196
- - ext/libffi/testsuite/libffi.call/strlen_win32.c
197
- - ext/libffi/testsuite/libffi.call/closure_fn0.c
198
- - ext/libffi/testsuite/libffi.call/cls_20byte1.c
199
- - ext/libffi/testsuite/libffi.call/cls_align_uint16.c
200
- - ext/libffi/testsuite/libffi.call/nested_struct4.c
201
- - ext/libffi/testsuite/libffi.call/return_sl.c
202
- - ext/libffi/testsuite/libffi.call/return_ldl.c
203
- - ext/libffi/testsuite/libffi.call/nested_struct8.c
204
- - ext/libffi/testsuite/libffi.call/cls_3byte2.c
205
- - ext/libffi/testsuite/libffi.call/cls_64byte.c
206
- - ext/libffi/testsuite/libffi.call/cls_5byte.c
207
- - ext/libffi/testsuite/libffi.call/cls_double.c
208
- - ext/libffi/testsuite/libffi.call/cls_4_1byte.c
209
- - ext/libffi/testsuite/libffi.call/struct4.c
210
- - ext/libffi/testsuite/libffi.call/cls_sint.c
211
- - ext/libffi/testsuite/libffi.call/cls_7byte.c
212
- - ext/libffi/testsuite/libffi.call/cls_9byte2.c
213
- - ext/libffi/testsuite/libffi.call/closure_fn1.c
214
- - ext/libffi/testsuite/libffi.call/struct2.c
215
- - ext/libffi/testsuite/libffi.call/struct5.c
216
- - ext/libffi/testsuite/libffi.call/cls_multi_uchar.c
217
- - ext/libffi/testsuite/libffi.call/cls_18byte.c
218
- - ext/libffi/testsuite/libffi.call/return_dbl1.c
219
- - ext/libffi/testsuite/libffi.call/cls_multi_sshort.c
220
- - ext/libffi/testsuite/libffi.call/return_sc.c
221
- - ext/libffi/testsuite/libffi.call/call.exp
222
- - ext/libffi/testsuite/libffi.call/strlen.c
223
- - ext/libffi/testsuite/libffi.call/closure_fn6.c
224
- - ext/libffi/testsuite/libffi.call/float4.c
225
- - ext/libffi/testsuite/libffi.call/cls_6_1_byte.c
226
- - ext/libffi/testsuite/libffi.call/nested_struct3.c
227
- - ext/libffi/testsuite/libffi.call/pyobjc-tc.c
228
- - ext/libffi/testsuite/libffi.call/nested_struct9.c
229
- - ext/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
230
- - ext/libffi/testsuite/libffi.call/ffitest.h
231
- - ext/libffi/testsuite/libffi.call/cls_16byte.c
232
- - ext/libffi/testsuite/libffi.call/cls_4byte.c
233
- - ext/libffi/testsuite/libffi.call/cls_align_longdouble.c
234
- - ext/libffi/testsuite/libffi.call/struct1.c
235
- - ext/libffi/testsuite/libffi.call/cls_align_sint16.c
236
- - ext/libffi/testsuite/libffi.call/closure_fn3.c
237
- - ext/libffi/testsuite/libffi.call/struct3.c
238
- - ext/libffi/testsuite/libffi.call/cls_19byte.c
239
- - ext/libffi/testsuite/libffi.call/closure_stdcall.c
240
- - ext/libffi/testsuite/libffi.call/cls_8byte.c
241
- - ext/libffi/testsuite/libffi.call/float3.c
242
- - ext/libffi/testsuite/libffi.call/return_ll.c
243
- - ext/libffi/testsuite/libffi.call/cls_float.c
244
- - ext/libffi/testsuite/libffi.call/float1.c
245
- - ext/libffi/testsuite/libffi.call/return_dbl2.c
246
- - ext/libffi/testsuite/libffi.call/negint.c
247
- - ext/libffi/testsuite/libffi.call/problem1.c
248
- - ext/libffi/testsuite/libffi.call/return_fl1.c
249
- - ext/libffi/testsuite/libffi.call/cls_uchar.c
250
- - ext/libffi/testsuite/libffi.call/cls_ushort.c
251
- - ext/libffi/testsuite/libffi.call/nested_struct5.c
252
- - ext/libffi/testsuite/libffi.call/cls_align_uint64.c
253
- - ext/libffi/testsuite/libffi.call/struct7.c
254
- - ext/libffi/testsuite/libffi.call/return_uc.c
255
- - ext/libffi/testsuite/libffi.call/cls_1_1byte.c
256
- - ext/libffi/testsuite/libffi.call/closure_fn5.c
257
- - ext/libffi/testsuite/libffi.call/cls_align_sint32.c
258
- - ext/libffi/testsuite/libffi.call/cls_2byte.c
259
- - ext/libffi/testsuite/libffi.call/cls_align_float.c
260
- - ext/libffi/testsuite/libffi.call/return_ul.c
261
- - ext/libffi/testsuite/libffi.call/nested_struct7.c
262
- - ext/libffi/testsuite/libffi.call/struct6.c
263
- - ext/libffi/testsuite/libffi.call/struct8.c
264
- - ext/libffi/testsuite/libffi.call/nested_struct.c
265
- - ext/libffi/testsuite/libffi.call/nested_struct2.c
266
- - ext/libffi/testsuite/libffi.call/return_fl.c
267
- - ext/libffi/testsuite/libffi.call/closure_fn4.c
268
- - ext/libffi/testsuite/libffi.call/cls_9byte1.c
269
- - ext/libffi/testsuite/libffi.call/float.c
270
- - ext/libffi/testsuite/libffi.call/return_fl3.c
271
- - ext/libffi/testsuite/libffi.call/cls_multi_ushort.c
272
- - ext/libffi/testsuite/libffi.call/cls_multi_schar.c
273
- - ext/libffi/testsuite/libffi.call/float2.c
274
- - ext/libffi/testsuite/libffi.call/closure_fn2.c
275
- - ext/libffi/testsuite/libffi.call/cls_7_1_byte.c
276
- - ext/libffi/testsuite/libffi.call/cls_3byte1.c
277
- - ext/libffi/testsuite/libffi.call/cls_align_pointer.c
278
- - ext/libffi/testsuite/libffi.call/cls_5_1_byte.c
279
- - ext/libffi/testsuite/libffi.call/cls_sshort.c
280
- - ext/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
281
- - ext/libffi/testsuite/libffi.call/cls_schar.c
282
- - ext/libffi/testsuite/libffi.call/cls_20byte.c
283
- - ext/libffi/testsuite/libffi.call/cls_uint.c
284
- - ext/libffi/testsuite/libffi.call/return_ll1.c
285
- - ext/libffi/testsuite/libffi.call/cls_align_sint64.c
286
- - ext/libffi/testsuite/libffi.call/cls_align_uint32.c
287
- - ext/libffi/testsuite/libffi.call/nested_struct6.c
288
- - ext/libffi/ltmain.sh
289
- - ext/libffi/mdate-sh
290
- - ext/libffi/README
291
- - ext/libffi/config.sub
292
- - ext/libffi/depcomp
293
- - ext/libffi/configure.ac
294
- - ext/libffi.darwin.mk
295
- - ext/MemoryPointer.c
296
- - ext/ffi.c
297
- - ext/Callback.c
298
- - ext/NativeLibrary.h
299
- - ext/compat.h
300
- - ext/AutoPointer.c
301
- - ext/Callback.h
302
- - ext/MemoryPointer.h
303
- - ext/AbstractMemory.h
304
- - ext/NativeLibrary.c
305
- - ext/ffi.mk
306
- - ext/Pointer.h
307
- - ext/AutoPointer.h
308
- - ext/Platform.c
309
- - ext/extconf.rb
310
- - ext/Invoker.c
39
+ - ext/ffi_c
40
+ - ext/ffi_c/AbstractMemory.c
41
+ - ext/ffi_c/AbstractMemory.h
42
+ - ext/ffi_c/AutoPointer.c
43
+ - ext/ffi_c/AutoPointer.h
44
+ - ext/ffi_c/Buffer.c
45
+ - ext/ffi_c/Callback.c
46
+ - ext/ffi_c/Callback.h
47
+ - ext/ffi_c/Invoker.c
48
+ - ext/ffi_c/MemoryPointer.c
49
+ - ext/ffi_c/MemoryPointer.h
50
+ - ext/ffi_c/NativeLibrary.c
51
+ - ext/ffi_c/NativeLibrary.h
52
+ - ext/ffi_c/NullPointer.c
53
+ - ext/ffi_c/Platform.c
54
+ - ext/ffi_c/Platform.h
55
+ - ext/ffi_c/Pointer.c
56
+ - ext/ffi_c/Pointer.h
57
+ - ext/ffi_c/Struct.c
58
+ - ext/ffi_c/Struct.h
59
+ - ext/ffi_c/Types.c
60
+ - ext/ffi_c/Types.h
61
+ - ext/ffi_c/compat.h
62
+ - ext/ffi_c/extconf.rb
63
+ - ext/ffi_c/ffi.c
64
+ - ext/ffi_c/ffi.mk
65
+ - ext/ffi_c/libffi
66
+ - ext/ffi_c/libffi.darwin.mk
67
+ - ext/ffi_c/libffi.mk
68
+ - ext/ffi_c/libffi/ChangeLog
69
+ - ext/ffi_c/libffi/ChangeLog.libffi
70
+ - ext/ffi_c/libffi/ChangeLog.libgcj
71
+ - ext/ffi_c/libffi/ChangeLog.v1
72
+ - ext/ffi_c/libffi/LICENSE
73
+ - ext/ffi_c/libffi/Makefile.am
74
+ - ext/ffi_c/libffi/Makefile.in
75
+ - ext/ffi_c/libffi/README
76
+ - ext/ffi_c/libffi/TODO
77
+ - ext/ffi_c/libffi/acinclude.m4
78
+ - ext/ffi_c/libffi/aclocal.m4
79
+ - ext/ffi_c/libffi/compile
80
+ - ext/ffi_c/libffi/config.guess
81
+ - ext/ffi_c/libffi/config.sub
82
+ - ext/ffi_c/libffi/configure
83
+ - ext/ffi_c/libffi/configure.ac
84
+ - ext/ffi_c/libffi/configure.host
85
+ - ext/ffi_c/libffi/depcomp
86
+ - ext/ffi_c/libffi/doc
87
+ - ext/ffi_c/libffi/doc/libffi.info
88
+ - ext/ffi_c/libffi/doc/libffi.texi
89
+ - ext/ffi_c/libffi/doc/stamp-vti
90
+ - ext/ffi_c/libffi/doc/version.texi
91
+ - ext/ffi_c/libffi/fficonfig.h.in
92
+ - ext/ffi_c/libffi/include
93
+ - ext/ffi_c/libffi/include/Makefile.am
94
+ - ext/ffi_c/libffi/include/Makefile.in
95
+ - ext/ffi_c/libffi/include/ffi.h.in
96
+ - ext/ffi_c/libffi/include/ffi_common.h
97
+ - ext/ffi_c/libffi/install-sh
98
+ - ext/ffi_c/libffi/libffi.pc.in
99
+ - ext/ffi_c/libffi/libtool-version
100
+ - ext/ffi_c/libffi/ltcf-c.sh
101
+ - ext/ffi_c/libffi/ltcf-cxx.sh
102
+ - ext/ffi_c/libffi/ltcf-gcj.sh
103
+ - ext/ffi_c/libffi/ltconfig
104
+ - ext/ffi_c/libffi/ltmain.sh
105
+ - ext/ffi_c/libffi/man
106
+ - ext/ffi_c/libffi/man/Makefile.am
107
+ - ext/ffi_c/libffi/man/Makefile.in
108
+ - ext/ffi_c/libffi/man/ffi.3
109
+ - ext/ffi_c/libffi/man/ffi_call.3
110
+ - ext/ffi_c/libffi/man/ffi_prep_cif.3
111
+ - ext/ffi_c/libffi/mdate-sh
112
+ - ext/ffi_c/libffi/missing
113
+ - ext/ffi_c/libffi/mkinstalldirs
114
+ - ext/ffi_c/libffi/src
115
+ - ext/ffi_c/libffi/src/alpha
116
+ - ext/ffi_c/libffi/src/alpha/ffi.c
117
+ - ext/ffi_c/libffi/src/alpha/ffitarget.h
118
+ - ext/ffi_c/libffi/src/alpha/osf.S
119
+ - ext/ffi_c/libffi/src/arm
120
+ - ext/ffi_c/libffi/src/arm/ffi.c
121
+ - ext/ffi_c/libffi/src/arm/ffitarget.h
122
+ - ext/ffi_c/libffi/src/arm/sysv.S
123
+ - ext/ffi_c/libffi/src/closures.c
124
+ - ext/ffi_c/libffi/src/cris
125
+ - ext/ffi_c/libffi/src/cris/ffi.c
126
+ - ext/ffi_c/libffi/src/cris/ffitarget.h
127
+ - ext/ffi_c/libffi/src/cris/sysv.S
128
+ - ext/ffi_c/libffi/src/debug.c
129
+ - ext/ffi_c/libffi/src/dlmalloc.c
130
+ - ext/ffi_c/libffi/src/frv
131
+ - ext/ffi_c/libffi/src/frv/eabi.S
132
+ - ext/ffi_c/libffi/src/frv/ffi.c
133
+ - ext/ffi_c/libffi/src/frv/ffitarget.h
134
+ - ext/ffi_c/libffi/src/ia64
135
+ - ext/ffi_c/libffi/src/ia64/ffi.c
136
+ - ext/ffi_c/libffi/src/ia64/ffitarget.h
137
+ - ext/ffi_c/libffi/src/ia64/ia64_flags.h
138
+ - ext/ffi_c/libffi/src/ia64/unix.S
139
+ - ext/ffi_c/libffi/src/java_raw_api.c
140
+ - ext/ffi_c/libffi/src/m32r
141
+ - ext/ffi_c/libffi/src/m32r/ffi.c
142
+ - ext/ffi_c/libffi/src/m32r/ffitarget.h
143
+ - ext/ffi_c/libffi/src/m32r/sysv.S
144
+ - ext/ffi_c/libffi/src/m68k
145
+ - ext/ffi_c/libffi/src/m68k/ffi.c
146
+ - ext/ffi_c/libffi/src/m68k/ffitarget.h
147
+ - ext/ffi_c/libffi/src/m68k/sysv.S
148
+ - ext/ffi_c/libffi/src/mips
149
+ - ext/ffi_c/libffi/src/mips/ffi.c
150
+ - ext/ffi_c/libffi/src/mips/ffitarget.h
151
+ - ext/ffi_c/libffi/src/mips/n32.S
152
+ - ext/ffi_c/libffi/src/mips/o32.S
153
+ - ext/ffi_c/libffi/src/pa
154
+ - ext/ffi_c/libffi/src/pa/ffi.c
155
+ - ext/ffi_c/libffi/src/pa/ffitarget.h
156
+ - ext/ffi_c/libffi/src/pa/hpux32.S
157
+ - ext/ffi_c/libffi/src/pa/linux.S
158
+ - ext/ffi_c/libffi/src/powerpc
159
+ - ext/ffi_c/libffi/src/powerpc/aix.S
160
+ - ext/ffi_c/libffi/src/powerpc/aix_closure.S
161
+ - ext/ffi_c/libffi/src/powerpc/asm.h
162
+ - ext/ffi_c/libffi/src/powerpc/darwin.S
163
+ - ext/ffi_c/libffi/src/powerpc/darwin_closure.S
164
+ - ext/ffi_c/libffi/src/powerpc/ffi.c
165
+ - ext/ffi_c/libffi/src/powerpc/ffi_darwin.c
166
+ - ext/ffi_c/libffi/src/powerpc/ffitarget.h
167
+ - ext/ffi_c/libffi/src/powerpc/linux64.S
168
+ - ext/ffi_c/libffi/src/powerpc/linux64_closure.S
169
+ - ext/ffi_c/libffi/src/powerpc/ppc_closure.S
170
+ - ext/ffi_c/libffi/src/powerpc/sysv.S
171
+ - ext/ffi_c/libffi/src/prep_cif.c
172
+ - ext/ffi_c/libffi/src/raw_api.c
173
+ - ext/ffi_c/libffi/src/s390
174
+ - ext/ffi_c/libffi/src/s390/ffi.c
175
+ - ext/ffi_c/libffi/src/s390/ffitarget.h
176
+ - ext/ffi_c/libffi/src/s390/sysv.S
177
+ - ext/ffi_c/libffi/src/sh
178
+ - ext/ffi_c/libffi/src/sh/ffi.c
179
+ - ext/ffi_c/libffi/src/sh/ffitarget.h
180
+ - ext/ffi_c/libffi/src/sh/sysv.S
181
+ - ext/ffi_c/libffi/src/sh64
182
+ - ext/ffi_c/libffi/src/sh64/ffi.c
183
+ - ext/ffi_c/libffi/src/sh64/ffitarget.h
184
+ - ext/ffi_c/libffi/src/sh64/sysv.S
185
+ - ext/ffi_c/libffi/src/sparc
186
+ - ext/ffi_c/libffi/src/sparc/ffi.c
187
+ - ext/ffi_c/libffi/src/sparc/ffitarget.h
188
+ - ext/ffi_c/libffi/src/sparc/v8.S
189
+ - ext/ffi_c/libffi/src/sparc/v9.S
190
+ - ext/ffi_c/libffi/src/types.c
191
+ - ext/ffi_c/libffi/src/x86
192
+ - ext/ffi_c/libffi/src/x86/darwin.S
193
+ - ext/ffi_c/libffi/src/x86/darwin64.S
194
+ - ext/ffi_c/libffi/src/x86/ffi.c
195
+ - ext/ffi_c/libffi/src/x86/ffi64.c
196
+ - ext/ffi_c/libffi/src/x86/ffitarget.h
197
+ - ext/ffi_c/libffi/src/x86/freebsd.S
198
+ - ext/ffi_c/libffi/src/x86/sysv.S
199
+ - ext/ffi_c/libffi/src/x86/unix64.S
200
+ - ext/ffi_c/libffi/src/x86/win32.S
201
+ - ext/ffi_c/libffi/testsuite
202
+ - ext/ffi_c/libffi/testsuite/Makefile.am
203
+ - ext/ffi_c/libffi/testsuite/Makefile.in
204
+ - ext/ffi_c/libffi/testsuite/config
205
+ - ext/ffi_c/libffi/testsuite/config/default.exp
206
+ - ext/ffi_c/libffi/testsuite/lib
207
+ - ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp
208
+ - ext/ffi_c/libffi/testsuite/lib/target-libpath.exp
209
+ - ext/ffi_c/libffi/testsuite/lib/wrapper.exp
210
+ - ext/ffi_c/libffi/testsuite/libffi.call
211
+ - ext/ffi_c/libffi/testsuite/libffi.call/call.exp
212
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c
213
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c
214
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c
215
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c
216
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c
217
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c
218
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c
219
+ - ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c
220
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c
221
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c
222
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c
223
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c
224
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c
225
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c
226
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c
227
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c
228
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c
229
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c
230
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c
231
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c
232
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c
233
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c
234
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c
235
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c
236
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c
237
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c
238
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c
239
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c
240
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c
241
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c
242
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c
243
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c
244
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c
245
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c
246
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c
247
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c
248
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c
249
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c
250
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c
251
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c
252
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c
253
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c
254
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c
255
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c
256
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c
257
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c
258
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
259
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c
260
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c
261
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
262
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c
263
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c
264
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c
265
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c
266
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c
267
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c
268
+ - ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c
269
+ - ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h
270
+ - ext/ffi_c/libffi/testsuite/libffi.call/float.c
271
+ - ext/ffi_c/libffi/testsuite/libffi.call/float1.c
272
+ - ext/ffi_c/libffi/testsuite/libffi.call/float2.c
273
+ - ext/ffi_c/libffi/testsuite/libffi.call/float3.c
274
+ - ext/ffi_c/libffi/testsuite/libffi.call/float4.c
275
+ - ext/ffi_c/libffi/testsuite/libffi.call/many.c
276
+ - ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c
277
+ - ext/ffi_c/libffi/testsuite/libffi.call/negint.c
278
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c
279
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c
280
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c
281
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c
282
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c
283
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c
284
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c
285
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c
286
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c
287
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c
288
+ - ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c
289
+ - ext/ffi_c/libffi/testsuite/libffi.call/problem1.c
290
+ - ext/ffi_c/libffi/testsuite/libffi.call/promotion.c
291
+ - ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c
292
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c
293
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c
294
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c
295
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c
296
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c
297
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c
298
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c
299
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c
300
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c
301
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c
302
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c
303
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c
304
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c
305
+ - ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c
306
+ - ext/ffi_c/libffi/testsuite/libffi.call/strlen.c
307
+ - ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c
308
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct1.c
309
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct2.c
310
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct3.c
311
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct4.c
312
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct5.c
313
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct6.c
314
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct7.c
315
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct8.c
316
+ - ext/ffi_c/libffi/testsuite/libffi.call/struct9.c
317
+ - ext/ffi_c/libffi/testsuite/libffi.special
318
+ - ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h
319
+ - ext/ffi_c/libffi/testsuite/libffi.special/special.exp
320
+ - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc
321
+ - ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc
322
+ - ext/ffi_c/libffi/texinfo.tex
323
+ - ext/ffi_c/rbffi.h
311
324
  - lib/ffi
312
- - lib/ffi/errno.rb
325
+ - lib/ffi.rb
326
+ - lib/ffi/autopointer.rb
327
+ - lib/ffi/buffer.rb
313
328
  - lib/ffi/callback.rb
314
- - lib/ffi/pointer.rb
329
+ - lib/ffi/errno.rb
330
+ - lib/ffi/ffi.rb
331
+ - lib/ffi/io.rb
332
+ - lib/ffi/library.rb
315
333
  - lib/ffi/managedstruct.rb
334
+ - lib/ffi/memorypointer.rb
316
335
  - lib/ffi/platform.rb
336
+ - lib/ffi/pointer.rb
337
+ - lib/ffi/struct.rb
317
338
  - lib/ffi/tools
318
- - lib/ffi/tools/generator_task.rb
339
+ - lib/ffi/tools/const_generator.rb
319
340
  - lib/ffi/tools/generator.rb
320
- - lib/ffi/tools/types_generator.rb
341
+ - lib/ffi/tools/generator_task.rb
321
342
  - lib/ffi/tools/struct_generator.rb
322
- - lib/ffi/tools/const_generator.rb
323
- - lib/ffi/autopointer.rb
324
- - lib/ffi/library.rb
343
+ - lib/ffi/tools/types_generator.rb
325
344
  - lib/ffi/types.rb
326
- - lib/ffi/struct.rb
327
- - lib/ffi/io.rb
328
- - lib/ffi/memorypointer.rb
329
- - lib/ffi/buffer.rb
330
- - lib/ffi/ffi.rb
345
+ - lib/ffi/union.rb
331
346
  - lib/ffi/variadic.rb
332
- - lib/ffi.rb
347
+ - nbproject/Makefile-Default.mk
333
348
  - nbproject/Makefile-impl.mk
349
+ - nbproject/Package-Default.bash
350
+ - nbproject/configurations.xml
334
351
  - nbproject/private
335
- - nbproject/private/private.xml
336
352
  - nbproject/private/configurations.xml
353
+ - nbproject/private/private.xml
337
354
  - nbproject/project.properties
338
- - nbproject/Makefile-Default.mk
339
355
  - nbproject/project.xml
340
- - nbproject/Package-Default.bash
341
- - nbproject/configurations.xml
342
- - samples/pty.rb
343
356
  - samples/getlogin.rb
344
- - samples/qsort.rb
345
- - samples/inotify.rb
346
- - samples/hello.rb
347
357
  - samples/getpid.rb
348
358
  - samples/gettimeofday.rb
349
- - specs/variadic_spec.rb
350
- - specs/typedef_spec.rb
351
- - specs/pointer_spec.rb
352
- - specs/managed_struct_spec.rb
353
- - specs/spec_helper.rb
354
- - specs/library_spec.rb
355
- - specs/number_spec.rb
356
- - specs/errno_spec.rb
357
- - specs/struct_spec.rb
358
- - specs/rbx
359
- - specs/rbx/spec_helper.rb
360
- - specs/rbx/struct_spec.rb
361
- - specs/rbx/attach_function_spec.rb
362
- - specs/rbx/memory_pointer_spec.rb
363
- - specs/buffer_spec.rb
364
- - specs/callback_spec.rb
365
- - specs/string_spec.rb
359
+ - samples/hello.rb
360
+ - samples/inotify.rb
361
+ - samples/pty.rb
362
+ - samples/qsort.rb
363
+ - samples/sample_helper.rb
364
+ - spec/ffi
365
+ - spec/ffi/buffer_spec.rb
366
+ - spec/ffi/callback_spec.rb
367
+ - spec/ffi/errno_spec.rb
368
+ - spec/ffi/library_spec.rb
369
+ - spec/ffi/managed_struct_spec.rb
370
+ - spec/ffi/number_spec.rb
371
+ - spec/ffi/pointer_spec.rb
372
+ - spec/ffi/rbx
373
+ - spec/ffi/rbx/attach_function_spec.rb
374
+ - spec/ffi/rbx/memory_pointer_spec.rb
375
+ - spec/ffi/rbx/spec_helper.rb
376
+ - spec/ffi/rbx/struct_spec.rb
377
+ - spec/ffi/spec_helper.rb
378
+ - spec/ffi/string_spec.rb
379
+ - spec/ffi/struct_spec.rb
380
+ - spec/ffi/typedef_spec.rb
381
+ - spec/ffi/union_spec.rb
382
+ - spec/ffi/variadic_spec.rb
383
+ - spec/spec.opts
366
384
  has_rdoc: true
367
385
  homepage: http://kenai.com/projects/ruby-ffi
368
386
  post_install_message:
369
- rdoc_options: []
370
-
387
+ rdoc_options:
388
+ - -x
389
+ - ext
390
+ - --main
391
+ - README.rdoc
371
392
  require_paths:
372
393
  - lib
394
+ - ext
373
395
  required_ruby_version: !ruby/object:Gem::Requirement
374
396
  requirements:
375
397
  - - ">="
@@ -385,9 +407,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
385
407
  requirements: []
386
408
 
387
409
  rubyforge_project: ffi
388
- rubygems_version: 1.2.0
410
+ rubygems_version: 1.3.1
389
411
  signing_key:
390
412
  specification_version: 2
391
- summary: A Ruby foreign function interface (compatible with Rubinius and JRuby FFI)
413
+ summary: A Ruby foreign function interface
392
414
  test_files: []
393
415