class Objc2swiftAssistant::ObjCFileSet

Attributes

code_recognizers[RW]
generated_swift_file_set[RW]
header_file_extensions[RW]
implmentation_file_extensions[RW]

Public Class Methods

new( root, code_recognizers, configuration:nil ) click to toggle source
# File lib/objc2swift_assistant/file_sets.rb, line 457
def initialize( root, code_recognizers, configuration:nil )
  super( root, configuration )
  @code_recognizers = code_recognizers
  @header_file_extensions=[ '.h', '.hh' ]
  @implmentation_file_extensions=[ '.m', '.mm' ]
end

Public Instance Methods

generate_swift_file_set(root, dry_run) click to toggle source
# File lib/objc2swift_assistant/file_sets.rb, line 489
def generate_swift_file_set(root, dry_run)
  @generated_swift_file_set = GeneratedSwiftFileSet.new( root, @configuration )

  # Map the original source files to the new generated source files
  @directory_nodes_by_path.each_value do |node |
    node.create_associated_generated_nodes( @generated_swift_file_set )
  end

  # Create the Swift code generator
  generator_definitions = SwiftGenerator::SwiftDefinitionSet.new( generated_root:@generated_swift_file_set.root.to_s )
  generator_definitions.make_unknown_types = true

  @active_file_nodes.each do |file_node|
    file_node.objc_2_swift_converter.generate( generator_definitions, @configuration, dry_run )
  end

  generator_definitions.run_generation_sequence()
  SwiftGenerator::write_files_for_definition_set( generator_definitions )
end
make_directory_node( path ) click to toggle source

Factory Methods

# File lib/objc2swift_assistant/file_sets.rb, line 465
def make_directory_node( path )
  ObjCDirectoryNode.new( path, self )
end
omit_file( path ) click to toggle source
# File lib/objc2swift_assistant/file_sets.rb, line 509
def omit_file( path )
  return @configuration.omit_file( path )
end
prepare_conversion() click to toggle source
# File lib/objc2swift_assistant/file_sets.rb, line 476
def prepare_conversion()
  # TODO: Error handling

  # puts( "1: #{@configuration.config_value( "Test", "company_name")}" )
  # puts( "2: #{@configuration.config_value( "SomePathTest", "company_name")}" )
  # puts( "3: #{@configuration.config_value( ".", "company_name")}" )
  # puts( "4: #{@configuration.config_value( "Runtime/Channel", "company_name")}" )

  @active_file_nodes.each do |file_node|
    file_node.prepare_conversion( @configuration )
  end
end
recognize_code_fragments() click to toggle source
# File lib/objc2swift_assistant/file_sets.rb, line 469
def recognize_code_fragments()
  @active_file_nodes.each do |file_node|
    file_node.prepare_for_use
    file_node.recognize_code_fragments( @code_recognizers )
  end
end