Class: GirFFI::Builders::ReturnValueBuilder
- Inherits:
-
BaseReturnValueBuilder
- Object
- BaseArgumentBuilder
- BaseReturnValueBuilder
- GirFFI::Builders::ReturnValueBuilder
- Defined in:
- lib/gir_ffi/builders/return_value_builder.rb
Overview
Implements building post-processing statements for return values.
Direct Known Subclasses
Constant Summary
Constants inherited from BaseArgumentBuilder
Instance Attribute Summary
Attributes inherited from BaseArgumentBuilder
#arginfo, #array_arg, #length_arg
Instance Method Summary collapse
Methods inherited from BaseReturnValueBuilder
#capture_variable_name, #has_return_value_name?, #post_converted_name, #relevant?, #return_value_name, #void_return_value?
Methods inherited from BaseArgumentBuilder
#argument_class_name, #array_length_idx, #array_length_parameter?, #call_argument_name, #closure=, #closure?, #closure_idx, #destroy_idx, #destroy_notifier?, #direction, #helper_argument?, #initialize, #mark_as_destroy_notifier, #name, #new_variable, #ownership_transfer, #safe, #specialized_type_tag, #type_info
Constructor Details
This class inherits a constructor from GirFFI::Builders::BaseArgumentBuilder
Instance Method Details
#has_post_conversion? ⇒ Boolean
18 19 20 |
# File 'lib/gir_ffi/builders/return_value_builder.rb', line 18 def has_post_conversion? closure? || needs_c_to_ruby_conversion? end |
#needs_c_to_ruby_conversion? ⇒ Boolean
22 23 24 |
# File 'lib/gir_ffi/builders/return_value_builder.rb', line 22 def needs_c_to_ruby_conversion? type_info.needs_c_to_ruby_conversion_for_functions? end |
#post_conversion ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/gir_ffi/builders/return_value_builder.rb', line 10 def post_conversion result = [] if has_post_conversion? result << "#{post_converted_name} = #{post_convertor.conversion}" end result end |