1 # ohcount.rb written by Mitchell Foral. mitchell<att>caladbolg.net.
2 # See COPYING for license information.
3 # Ohcount module tweaked for use by Ohloh.
5 $: << File.expand_path(File.dirname(__FILE__))
6 $: << "#{File.expand_path(File.dirname(__FILE__))}/#{`#{File.dirname(__FILE__)}/print_arch`.strip}"
12 def file_location=(value) set_diskpath(value) end
13 def file_location() diskpath() end
14 def filenames=(value) set_filenames(value) end
15 def contents() get_contents() end
16 def polyglot() get_language() end
18 def language_breakdowns
19 list = get_parsed_language_list()
20 return array_from_list(list, :pl)
23 def language_breakdown(language)
24 return language_breakdowns().find { |lb| lb.name == language.to_s }
28 list = get_license_list()
29 array = array_from_list(list, :lic)
30 return array.map! { |l| l.name }
34 return language_breakdowns().collect { |lb| lb.name }
39 return array_from_list(list, :loc)
44 ret = array_from_list(list, :delta)
46 def loc_deltas() self end
52 filenames.each { |f| yield f }
57 def array_from_list(list, method)
61 array << iter.send(method)
72 yield iter.sf if iter.sf.polyglot
77 # this should yield each filename, not an sf object
81 yield iter.sf.filename if iter.sf
98 def self.binary_filename?(filename)
99 return Ohcount.ohcount_is_binary_filename(filename) == 1