class Objc2swiftAssistant::ObjC2SwiftClassConverter
Attributes
class_name[RW]
extension_converter[RW]
super_class[RW]
Public Class Methods
new( file_converter, class_name, configuration )
click to toggle source
Calls superclass method
Objc2swiftAssistant::ObjC2SwiftClassLikeConverter::new
# File lib/objc2swift_assistant/objc_2_swift.rb, line 359 def initialize( file_converter, class_name, configuration ) super( file_converter, class_name, configuration ) @extension_region = nil end
Public Instance Methods
all_methods()
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 384 def all_methods methods = @methods_by_signature.values.clone methods << @extension_region.methods_by_signature.all_values unless @extension_region.nil? # Categories are handled as seperate entities # @category_regions_by_name.inject( methods ) { |m, (k, v)| m << v.methods_by_signature; m } methods end
all_properties()
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 392 def all_properties properties = @properties_by_name.values.clone properties << @extension_region.properties_by_name.all_values unless @extension_region.nil? # Categories are handled as seperate entities # @category_regions_by_name.inject( properties ) { |p, (k, v)| p << v.properties_by_name; p } properties end
generate( generator_defs, file_name, configuration, dry_run )
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 400 def generate( generator_defs, file_name, configuration, dry_run ) generated_class = make_generator_class_object( generator_defs, file_name ) generated_class.source_file.company_name = configuration.company_name( cannonical_source_file_path.to_s ) unless cannonical_source_file_path.nil? if ! @interface_region.nil? && emit_unconverted_content() generated_class.top_inner_comment_block = Objc2swiftAssistant::prepare_class_header_lines( @interface_region.root_header ) end properties_by_name.each do | _, property | property.generate( generated_class, configuration, dry_run ) end methods_by_signature.each do | _, method | method.generate( generated_class, configuration, dry_run ) end end
make_generator_class_object( generator_defs, file_name )
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 417 def make_generator_class_object( generator_defs, file_name ) @configuration.log_verbose( "------- #{@interface_region.implements}" ) unless @interface_region.nil? if @interface_region.nil? implements_list =[] else implements_list = @interface_region.super_class.nil? ? [] : [@interface_region.super_class] implements_list << @interface_region.implements unless @interface_region.implements.nil? || @interface_region.implements.length == 0 end SwiftGenerator::SwiftClass.new( generator_defs, class_name, implements_list, file_name:file_name.to_s, characteristics:[] ) end
make_modifiers( access_control:nil, optional:nil )
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 429 def make_modifiers( access_control:nil, optional:nil ) return [] if access_control.nil? return [access_control.to_s] end
prepare()
click to toggle source
# File lib/objc2swift_assistant/objc_2_swift.rb, line 364 def prepare methods = all_methods properties = all_properties methods.each do |method_converter| method_converter.compute_swift_name end properties.each do |property_converter| methods.each do |method_converter| property_converter.check_method_for_association(method_converter) end property_converter.prepare end methods.each do |method_converter| method_converter.prepare end end