class Dependencies < Hash def initialize initialize_ruby_dependencies initialize_csharp_dependencies end def initialize_ruby_dependencies ruby_deps = Array.new Dir.glob("**/*.rb").each{|f| text=File.read(f) text.scan(/require '([\w\/]+)/).each{|r| ruby_deps << r.first.to_s if !ruby_deps.include? r } } if ruby_deps.length > 0 ruby_deps = ruby_deps.sort self["ruby"]=ruby_deps end end def initialize_csharp_dependencies cs_dep_hash=Hash.new #includes = Array.new #hints = Array.new Dir.glob("**/*.csproj").each{|f| #cs_proj_dep = Dependencies.get_dependencies_from_file f text=File.read(f) text.scan(/([\w\.\\\s-]+) 0 cs_deps[:system]=cs_deps[:system].sort# = cs_deps.sort cs_deps[:file]=cs_deps[:file] self["C#"]=cs_deps end end def self.get_dependencies_from_file filename cs_dep_hash=Hash.new text=File.read(filename) text.scan(/([\w\.\\\s-]+) 0 cs_deps[:system]=cs_deps[:system].sort cs_deps[:file]=cs_deps[:file] end cs_deps end def show self.each do |key,array| if(array.length > 0) puts key array.each {|v| puts " " + Color.green + v + Color.clear + " " } end end puts " " end end