1 require 'rexml/document'
4 class CsprojRule < FileRule
9 @import = args.shift || /.*/
10 @import = /^#{Regexp.escape(@import.to_s)}$/ unless @import.is_a? Regexp
15 def process_source_file(source_file)
16 if source_file.filename =~ /\.csproj$/ && source_file.language_breakdown('xml')
17 callback = lambda do |import|
18 @count += 1 if import =~ @import
22 REXML::Document.parse_stream(source_file.language_breakdown('xml').code, CsprojListener.new(callback))
23 rescue REXML::ParseException
24 # Malformed XML! -- ignore and move on