ffi 1.15.5-java → 1.16.1-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/ffi/variadic.rb CHANGED
@@ -54,16 +54,27 @@ module FFI
54
54
  invoker = self
55
55
  params = "*args"
56
56
  call = "call"
57
- mod.module_eval <<-code
58
- @@#{mname} = invoker
59
- def self.#{mname}(#{params})
60
- @@#{mname}.#{call}(#{params})
61
- end
62
- def #{mname}(#{params})
63
- @@#{mname}.#{call}(#{params})
64
- end
57
+ mname = mname.to_sym
58
+ mod.module_eval <<-code, __FILE__, __LINE__
59
+ @ffi_functions = {} unless defined?(@ffi_functions)
60
+ @ffi_functions[#{mname.inspect}] = invoker
61
+
62
+ def self.#{mname}(#{params})
63
+ @ffi_functions[#{mname.inspect}].#{call}(#{params})
64
+ end
65
+
66
+ define_method(#{mname.inspect}, &method(#{mname.inspect}))
65
67
  code
66
68
  invoker
67
69
  end
70
+
71
+ # Retrieve Array of parameter types
72
+ #
73
+ # This method returns an Array of FFI types accepted as function parameters.
74
+ #
75
+ # @return [Array<FFI::Type>]
76
+ def param_types
77
+ [*@fixed, Type::Builtin::VARARGS]
78
+ end
68
79
  end
69
80
  end
data/lib/ffi/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module FFI
2
- VERSION = '1.15.5'
2
+ VERSION = '1.16.1'
3
3
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,35 +1,39 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.5
4
+ version: 1.16.1
5
5
  platform: java
6
6
  authors:
7
7
  - Wayne Meissner
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDLjCCAhagAwIBAgIBCTANBgkqhkiG9w0BAQsFADA9MQ4wDAYDVQQDDAVrYW5p
14
- czEXMBUGCgmSJomT8ixkARkWB2NvbWNhcmQxEjAQBgoJkiaJk/IsZAEZFgJkZTAe
15
- Fw0yMTA0MDcxMzQzNTZaFw0yMjA0MDcxMzQzNTZaMD0xDjAMBgNVBAMMBWthbmlz
16
- MRcwFQYKCZImiZPyLGQBGRYHY29tY2FyZDESMBAGCgmSJomT8ixkARkWAmRlMIIB
17
- IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApop+rNmg35bzRugZ21VMGqI6
18
- HGzPLO4VHYncWn/xmgPU/ZMcZdfj6MzIaZJ/czXyt4eHpBk1r8QOV3gBXnRXEjVW
19
- 9xi+EdVOkTV2/AVFKThcbTAQGiF/bT1n2M+B1GTybRzMg6hyhOJeGPqIhLfJEpxn
20
- lJi4+ENAVT4MpqHEAGB8yFoPC0GqiOHQsdHxQV3P3c2OZqG+yJey74QtwA2tLcLn
21
- Q53c63+VLGsOjODl1yPn/2ejyq8qWu6ahfTxiIlSar2UbwtaQGBDFdb2CXgEufXT
22
- L7oaPxlmj+Q2oLOfOnInd2Oxop59HoJCQPsg8f921J43NCQGA8VHK6paxIRDLQID
23
- AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUvgTdT7fe
24
- x17ugO3IOsjEJwW7KP4wDQYJKoZIhvcNAQELBQADggEBAGCQhS4TBqUG1bSY5gw5
25
- emj2GNePHFNlXTZ/W0/7FlnXQz/LyBZeYmy4AIHcdY0w9xsu3bPNGk8kLBkHgK3Y
26
- l/yWiUK0NYRI3K3yI2EoTfrHPDT8XIgBPeUUGv5Nje+SUYMQWsfYWKo3+vLEG64a
27
- n1xP+1+g2Za39WCS5LwnDWMiIk47NnxR9yXErKd0Iau/Q/IarYsHFX6kWWmlMoln
28
- W1lMomCcOJFwIPnsy6aqq7YfS0YcqyHjcvs1h5k3zPaIRWhoPlQivniMVMa3Txh+
29
- NEF/4atY64rruzkyfxGEcrFFOHJIkWnWQjRGaiZdgULxf7ira2gEFvV/ZtamqJWF
30
- c+I=
13
+ MIIEBDCCAmygAwIBAgIBAjANBgkqhkiG9w0BAQsFADAoMSYwJAYDVQQDDB1sYXJz
14
+ L0RDPWdyZWl6LXJlaW5zZG9yZi9EQz1kZTAeFw0yMzAyMTUxNzQxMTVaFw0yNDAy
15
+ MTUxNzQxMTVaMCgxJjAkBgNVBAMMHWxhcnMvREM9Z3JlaXotcmVpbnNkb3JmL0RD
16
+ PWRlMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAwum6Y1KznfpzXOT/
17
+ mZgJTBbxZuuZF49Fq3K0WA67YBzNlDv95qzSp7V/7Ek3NCcnT7G+2kSuhNo1FhdN
18
+ eSDO/moYebZNAcu3iqLsuzuULXPLuoU0GsMnVMqV9DZPh7cQHE5EBZ7hlzDBK7k/
19
+ 8nBMvR0mHo77kIkapHc26UzVq/G0nKLfDsIHXVylto3PjzOumjG6GhmFN4r3cP6e
20
+ SDfl1FSeRYVpt4kmQULz/zdSaOH3AjAq7PM2Z91iGwQvoUXMANH2v89OWjQO/NHe
21
+ JMNDFsmHK/6Ji4Kk48Z3TyscHQnipAID5GhS1oD21/WePdj7GhmbF5gBzkV5uepd
22
+ eJQPgWGwrQW/Z2oPjRuJrRofzWfrMWqbOahj9uth6WSxhNexUtbjk6P8emmXOJi5
23
+ chQPnWX+N3Gj+jjYxqTFdwT7Mj3pv1VHa+aNUbqSPpvJeDyxRIuo9hvzDaBHb/Cg
24
+ 9qRVcm8a96n4t7y2lrX1oookY6bkBaxWOMtWlqIprq8JZXM9AgMBAAGjOTA3MAkG
25
+ A1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBQ4h1tIyvdUWtMI739xMzTR
26
+ 7EfMFzANBgkqhkiG9w0BAQsFAAOCAYEAQAcuTARfiiVUVx5KURICfdTM2Kd7LhOn
27
+ qt3Vs4ANGvT226LEp3RnQ+kWGQYMRb3cw3LY2TNQRPlnZxE994mgjBscN4fbjXqO
28
+ T0JbVpeszRZa5k1goggbnWT7CO7yU7WcHh13DaSubY7HUpAJn2xz9w2stxQfN/EE
29
+ VMlnDJ1P7mUHAvpK8X9j9h7Xlc1niViT18MYwux8mboVTryrLr+clATUkkM3yBF0
30
+ RV+c34ReW5eXO9Tr6aKTxh/pFC9ggDT6jOxuJgSvG8HWJzVf4NDvMavIas4KYjiI
31
+ BU6CpWaG5NxicqL3BERi52U43HV08br+LNVpb7Rekgve/PJuSFnAR015bhSRXe5U
32
+ vBioD1qW2ZW9tXg8Ww2IfDaO5a1So5Xby51rhNlyo6ATj2NkuLWZUKPKHhAz0TKm
33
+ Dzx/gFSOrRoCt2mXNgrmcAfr386AfaMvCh7cXqdxZwmVo7ILZCYXck0pajvubsDd
34
+ NUIIFkVXvd1odFyK9LF1RFAtxn/iAmpx
31
35
  -----END CERTIFICATE-----
32
- date: 2022-01-10 00:00:00.000000000 Z
36
+ date: 2023-09-24 00:00:00.000000000 Z
33
37
  dependencies:
34
38
  - !ruby/object:Gem::Dependency
35
39
  name: rake
@@ -51,14 +55,14 @@ dependencies:
51
55
  requirements:
52
56
  - - "~>"
53
57
  - !ruby/object:Gem::Version
54
- version: '1.0'
58
+ version: '1.1'
55
59
  type: :development
56
60
  prerelease: false
57
61
  version_requirements: !ruby/object:Gem::Requirement
58
62
  requirements:
59
63
  - - "~>"
60
64
  - !ruby/object:Gem::Version
61
- version: '1.0'
65
+ version: '1.1'
62
66
  - !ruby/object:Gem::Dependency
63
67
  name: rake-compiler-dock
64
68
  requirement: !ruby/object:Gem::Requirement
@@ -106,12 +110,16 @@ files:
106
110
  - lib/ffi/autopointer.rb
107
111
  - lib/ffi/buffer.rb
108
112
  - lib/ffi/callback.rb
113
+ - lib/ffi/compat.rb
109
114
  - lib/ffi/data_converter.rb
115
+ - lib/ffi/dynamic_library.rb
110
116
  - lib/ffi/enum.rb
111
117
  - lib/ffi/errno.rb
112
118
  - lib/ffi/ffi.rb
119
+ - lib/ffi/function.rb
113
120
  - lib/ffi/io.rb
114
121
  - lib/ffi/library.rb
122
+ - lib/ffi/library_path.rb
115
123
  - lib/ffi/managedstruct.rb
116
124
  - lib/ffi/memorypointer.rb
117
125
  - lib/ffi/platform.rb
@@ -120,9 +128,12 @@ files:
120
128
  - lib/ffi/platform/aarch64-freebsd12/types.conf
121
129
  - lib/ffi/platform/aarch64-linux/types.conf
122
130
  - lib/ffi/platform/aarch64-openbsd/types.conf
131
+ - lib/ffi/platform/aarch64-windows/types.conf
123
132
  - lib/ffi/platform/arm-freebsd/types.conf
124
133
  - lib/ffi/platform/arm-freebsd12/types.conf
125
134
  - lib/ffi/platform/arm-linux/types.conf
135
+ - lib/ffi/platform/hppa1.1-linux/types.conf
136
+ - lib/ffi/platform/hppa2.0-linux/types.conf
126
137
  - lib/ffi/platform/i386-cygwin/types.conf
127
138
  - lib/ffi/platform/i386-darwin/types.conf
128
139
  - lib/ffi/platform/i386-freebsd/types.conf
@@ -134,6 +145,7 @@ files:
134
145
  - lib/ffi/platform/i386-solaris/types.conf
135
146
  - lib/ffi/platform/i386-windows/types.conf
136
147
  - lib/ffi/platform/ia64-linux/types.conf
148
+ - lib/ffi/platform/loongarch64-linux/types.conf
137
149
  - lib/ffi/platform/mips-linux/types.conf
138
150
  - lib/ffi/platform/mips64-linux/types.conf
139
151
  - lib/ffi/platform/mips64el-linux/types.conf
@@ -153,9 +165,10 @@ files:
153
165
  - lib/ffi/platform/s390x-linux/types.conf
154
166
  - lib/ffi/platform/sparc-linux/types.conf
155
167
  - lib/ffi/platform/sparc-solaris/types.conf
156
- - lib/ffi/platform/sparc64-linux/types.conf
168
+ - lib/ffi/platform/sparcv9-linux/types.conf
157
169
  - lib/ffi/platform/sparcv9-openbsd/types.conf
158
170
  - lib/ffi/platform/sparcv9-solaris/types.conf
171
+ - lib/ffi/platform/sw_64-linux/types.conf
159
172
  - lib/ffi/platform/x86_64-cygwin/types.conf
160
173
  - lib/ffi/platform/x86_64-darwin/types.conf
161
174
  - lib/ffi/platform/x86_64-dragonflybsd/types.conf
@@ -200,7 +213,7 @@ metadata:
200
213
  wiki_uri: https://github.com/ffi/ffi/wiki
201
214
  source_code_uri: https://github.com/ffi/ffi/
202
215
  mailing_list_uri: http://groups.google.com/group/ruby-ffi
203
- post_install_message:
216
+ post_install_message:
204
217
  rdoc_options:
205
218
  - "--exclude=ext/ffi_c/.*\\.o$"
206
219
  - "--exclude=ffi_c\\.(bundle|so)$"
@@ -210,15 +223,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
210
223
  requirements:
211
224
  - - ">="
212
225
  - !ruby/object:Gem::Version
213
- version: '2.3'
226
+ version: '2.5'
214
227
  required_rubygems_version: !ruby/object:Gem::Requirement
215
228
  requirements:
216
229
  - - ">="
217
230
  - !ruby/object:Gem::Version
218
231
  version: '0'
219
232
  requirements: []
220
- rubygems_version: 3.3.3
221
- signing_key:
233
+ rubygems_version: 3.4.19
234
+ signing_key:
222
235
  specification_version: 4
223
236
  summary: Ruby FFI
224
237
  test_files: []
metadata.gz.sig CHANGED
Binary file