48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
# File 'lib/cli/file_helper.rb', line 48
def match(pattern,filename)
filename = filename.sub(/^#{@project_root}\//,'')
return false if pattern =~ /^\s*$/
return false if pattern =~ /^#/
return false if pattern =~ /^!/
if pattern =~ /\/$/
dirname = pattern.sub(/\/$/,'')
return filename == dirname || filename =~ /^#{dirname}\/.*$/
end
if pattern =~ /^\//
parts = filename.split('/')
return File.fnmatch(pattern.sub(/^\//,''),parts[0])
end
if pattern.include? '/'
return File.fnmatch(pattern,filename)
end
File.fnmatch(pattern,filename,File::FNM_PATHNAME)
end
|