class Objc2swiftAssistant::ClassInterfaceRegion

Attributes

implements[RW]
super_class[RW]

Public Class Methods

new(starting_line_number, is_root_entity ) click to toggle source
# File lib/objc2swift_assistant/recognizers/interface_recognizer.rb, line 18
def initialize(starting_line_number, is_root_entity )
  super(starting_line_number, is_root_entity, CLASS_INTERFACE_KEY )
end

Public Instance Methods

extract_information( file_slice ) click to toggle source
# File lib/objc2swift_assistant/recognizers/interface_recognizer.rb, line 22
def extract_information( file_slice )
  m = /^\s*(@interface)\s+(?<class_name>\w*)\s*:\s*(?<super_class>\w*)?\s*(<(?<implements>.*)>)?/.match(file_slice[0])
  unless m.nil?
    @class_name = m["class_name"]
    @super_class = m["super_class"]
    implements_list = m["implements"]
    @implements = implements_list.nil? ? [] : implements_list.split( /\s*,\s*/ )
    @configuration.log_verbose( "class_name = #{@class_name} super_class = #{@super_class} implements = #{@implements}")
  else
    @configuration.log_warning( "WARNING: Could not match interface declaration in #{file_slice[0]}" )
  end
end