gir_ffi 0.15.8 → 0.15.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog.md +5 -0
- data/lib/gir_ffi/builders/argument_builder_collection.rb +14 -2
- data/lib/gir_ffi/builders/constructor_builder.rb +1 -1
- data/lib/gir_ffi/builders/struct_builder.rb +1 -1
- data/lib/gir_ffi/info_ext/full_type_name.rb +3 -2
- data/lib/gir_ffi/info_ext/i_function_info.rb +10 -0
- data/lib/gir_ffi/info_ext/i_type_info.rb +1 -1
- data/lib/gir_ffi/info_ext/i_vfunc_info.rb +4 -0
- data/lib/gir_ffi/version.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 240502b5086fedd9c4f52a114faf67c5021f03c4fedc10dd6fbfabd064a64aca
|
4
|
+
data.tar.gz: b89d501796ee980af6d731758f144a9eba21472353bae02029548f6541787db4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a6f7df11953d3b1a88c3fa515207d3f15883e79de7114fb6ad55bf1545e1e023a6b1b7b83199fd3ef0a45ab762d240a9b59eec8c4aac660b1d8d83363de51c0a
|
7
|
+
data.tar.gz: 18ca30c7f7f54daeff80c3045d24e1231d0a927e68f0ae8877a548b95cdc8602298b602925e3ad20e6b26049b62a7541b85d7f2d56b328594d22ca39b960146c
|
data/Changelog.md
CHANGED
@@ -87,7 +87,14 @@ module GirFFI
|
|
87
87
|
def set_up_destroy_notifier_relations
|
88
88
|
@base_argument_builders.each do |bldr|
|
89
89
|
if (idx = bldr.destroy_idx) >= 0
|
90
|
-
@base_argument_builders[idx]
|
90
|
+
target = @base_argument_builders[idx]
|
91
|
+
if target.specialized_type_tag == :callback &&
|
92
|
+
bldr.specialized_type_tag == :callback
|
93
|
+
target.mark_as_destroy_notifier bldr
|
94
|
+
else
|
95
|
+
warn "Not marking #{target.name} (#{target.specialized_type_tag})" \
|
96
|
+
" as destroy notifier for #{bldr.name} (#{bldr.specialized_type_tag})"
|
97
|
+
end
|
91
98
|
end
|
92
99
|
end
|
93
100
|
end
|
@@ -132,7 +139,12 @@ module GirFFI
|
|
132
139
|
def split_off_block_argument
|
133
140
|
builders_with_name = argument_builders.select(&:method_argument_name)
|
134
141
|
blocks, base = builders_with_name.partition(&:block_argument?)
|
135
|
-
|
142
|
+
case blocks.count
|
143
|
+
when 1
|
144
|
+
return base, blocks.first
|
145
|
+
else
|
146
|
+
return builders_with_name, nil
|
147
|
+
end
|
136
148
|
end
|
137
149
|
|
138
150
|
def base_argument_names(arguments)
|
@@ -2,11 +2,12 @@
|
|
2
2
|
|
3
3
|
module GirFFI
|
4
4
|
module InfoExt
|
5
|
-
# Extension module provinding a #
|
5
|
+
# Extension module provinding a #full_name method suitable for
|
6
6
|
# callbacks, constants and registered types. Signals and vfuncs need a
|
7
7
|
# different implementation.
|
8
|
+
#
|
8
9
|
module FullTypeName
|
9
|
-
def
|
10
|
+
def full_name
|
10
11
|
"#{safe_namespace}::#{safe_name}"
|
11
12
|
end
|
12
13
|
end
|
@@ -14,6 +14,16 @@ module GirFFI
|
|
14
14
|
def return_ffi_type
|
15
15
|
return_type.to_ffi_type
|
16
16
|
end
|
17
|
+
|
18
|
+
def full_name
|
19
|
+
if method?
|
20
|
+
"#{container.full_name}##{safe_name}"
|
21
|
+
elsif container
|
22
|
+
"#{container.full_name}.#{safe_name}"
|
23
|
+
else
|
24
|
+
"#{safe_namespace}.#{safe_name}"
|
25
|
+
end
|
26
|
+
end
|
17
27
|
end
|
18
28
|
end
|
19
29
|
end
|
data/lib/gir_ffi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gir_ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matijs van Zuijlen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -156,14 +156,14 @@ dependencies:
|
|
156
156
|
requirements:
|
157
157
|
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 0.
|
159
|
+
version: 0.17.0
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 0.
|
166
|
+
version: 0.17.0
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: rubocop-packaging
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -428,7 +428,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
428
428
|
- !ruby/object:Gem::Version
|
429
429
|
version: '0'
|
430
430
|
requirements: []
|
431
|
-
rubygems_version: 3.2.
|
431
|
+
rubygems_version: 3.2.32
|
432
432
|
signing_key:
|
433
433
|
specification_version: 4
|
434
434
|
summary: FFI-based GObject binding using the GObject Introspection Repository
|