Class: Lhj::Command::ReverseImport
- Inherits:
-
Lhj::Command
- Object
- CLAide::Command
- Lhj::Command
- Lhj::Command::ReverseImport
- Defined in:
- lib/lhj/command/reverse_import.rb
Instance Method Summary collapse
- #child_dir ⇒ Object
- #framework_name_reg ⇒ Object
- #get_all_frameworks ⇒ Object
- #get_import_headers ⇒ Object
- #header_handler_file(f) ⇒ Object
- #import_reg ⇒ Object
-
#initialize(argv) ⇒ ReverseImport
constructor
A new instance of ReverseImport.
- #pod_folder_name ⇒ Object
- #run ⇒ Object
Constructor Details
#initialize(argv) ⇒ ReverseImport
Returns a new instance of ReverseImport.
11 12 13 14 15 |
# File 'lib/lhj/command/reverse_import.rb', line 11 def initialize(argv) @current_path = argv.shift_argument || Dir.pwd @framework_names = [] super end |
Instance Method Details
#child_dir ⇒ Object
45 46 47 48 49 |
# File 'lib/lhj/command/reverse_import.rb', line 45 def child_dir dirs = Dir.entries(pod_folder_name) dirs.reject! { |d| File.directory?(d) } dirs end |
#framework_name_reg ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/lhj/command/reverse_import.rb', line 33 def framework_name_reg @url_key_reg ||= begin keys = @framework_names.join('|') /#{keys}/ end @url_key_reg end |
#get_all_frameworks ⇒ Object
28 29 30 31 |
# File 'lib/lhj/command/reverse_import.rb', line 28 def get_all_frameworks folders = child_dir folders.each { |name| @framework_names << name } end |
#get_import_headers ⇒ Object
22 23 24 25 26 |
# File 'lib/lhj/command/reverse_import.rb', line 22 def get_import_headers Dir.glob("#{@current_path}/**/*.{m,h,pch}").each do |f| header_handler_file(f) unless f =~ /Pods/ end end |
#header_handler_file(f) ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/lhj/command/reverse_import.rb', line 55 def header_handler_file(f) str = '' File.readlines(f).each do |l| if import_reg =~ l ma = l.match(import_reg) if framework_name_reg =~ ma[1] str += "#import \"#{ma[2]}\"\n" else str += l.dup end else str += l.dup end end File.write(f, str) end |
#import_reg ⇒ Object
51 52 53 |
# File 'lib/lhj/command/reverse_import.rb', line 51 def import_reg /#import\s*<(.*)\/(.*)>$/ end |
#pod_folder_name ⇒ Object
41 42 43 |
# File 'lib/lhj/command/reverse_import.rb', line 41 def pod_folder_name File.join(@current_path, 'MacauLife', 'CustomPods') end |
#run ⇒ Object
17 18 19 20 |
# File 'lib/lhj/command/reverse_import.rb', line 17 def run get_all_frameworks get_import_headers end |