file-visitor 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f1db8062d46a31040d1c227b5bc50e3d374d6868
4
- data.tar.gz: 4b097533b3731bf8fca9bda7d7af37def9008902
3
+ metadata.gz: 4a578d6d010b47bdee7e6afe8a360a47cdfdca71
4
+ data.tar.gz: d54bf6b9bda3ffed3410ea8255318f2de0cd6b7d
5
5
  SHA512:
6
- metadata.gz: b0430857539fc390d49716f24ff39bafbd9454244a096d42e07641c7f80b8240482710d0890c1743024baea33c9f1ae0bf39bed73f0706640ed3b28d100c8cbd
7
- data.tar.gz: ddf0ab7b178eade7a2dd751dbe9b37235e067433b949e5b757f0a460425d71ce539506b7a5e41ff9097715cec065f2bf057242acef18a49e12d3e4f736977b09
6
+ metadata.gz: df0d33f6c59e6bcc3877482d7a6298c142fa3dcf6802bd45d7324cabba729673a57749b61afb391f4ca02e7629c18fa0686d759396592a722aae56d9497ddef9
7
+ data.tar.gz: 2eacd0ad5b60c15c9b8f0350195284b2191c8b2347ba69a7db6c87d029219ba463a53b278bf0b24ffd7411d942a076b26eb556f8e19b81a19c81fe1d15baf640
data/README.md CHANGED
@@ -69,7 +69,8 @@ filename string or regexp.
69
69
 
70
70
  file extension sym or string.
71
71
 
72
- visitor.add_filter(:ext, :txt)
72
+ visitor.add_filter(:ext, 'txt')
73
+ visitor.add_filter(:ext, ['txt', 'log', 'log.gz']) // OR condition
73
74
 
74
75
  #### Modified time
75
76
 
@@ -3,24 +3,36 @@ require 'file/visitor/filter'
3
3
 
4
4
  class File::Visitor::Filter::Ext
5
5
 
6
- def initialize(extstr)
7
- if extstr.nil? || !(extstr.is_a?(String) || extstr.is_a?(Symbol))
8
- raise ArgumentError, "ext must be Sting/Symbol"
6
+ def initialize(ext)
7
+ if ext.is_a?(Array)
8
+ @extentions = ext
9
+ elsif ext.nil?
10
+ raise ArgumentError, "ext is nil"
11
+ else
12
+ @extentions = [ext]
9
13
  end
10
- extstr = extstr.to_s
11
- unless extstr =~ /\A\./
12
- extstr = ".#{extstr}"
14
+
15
+ @extentions = @extentions.map do |extention|
16
+ if extention.nil? ||
17
+ !(extention.is_a?(String) || extention.is_a?(Symbol))
18
+ raise ArgumentError, "ext must be Sting/Symbol."
19
+ end
20
+
21
+ extention = extention.to_s
22
+ unless extention =~ /\A\./
23
+ extention = ".#{extention}"
24
+ end
25
+ extention
13
26
  end
14
- @ext = extstr
15
27
  end
16
28
 
17
29
  def match?(path)
18
30
  ext = File.extname(path)
19
- ext == @ext
31
+ @extentions.any? { |fext| ext == fext }
20
32
  end
21
33
 
22
34
  def to_s
23
- "%s[%s]" % [self.class.name, @ext.to_s]
35
+ "%s[%s]" % [self.class.name, @extentions.join(',')]
24
36
  end
25
37
 
26
38
  end
@@ -1,5 +1,5 @@
1
1
  class File
2
2
  class Visitor
3
- VERSION = "0.2.0"
3
+ VERSION = "0.3.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: file-visitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - bonar
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-08-25 00:00:00.000000000 Z
11
+ date: 2016-10-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -101,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
101
101
  version: '0'
102
102
  requirements: []
103
103
  rubyforge_project:
104
- rubygems_version: 2.6.3
104
+ rubygems_version: 2.5.1
105
105
  signing_key:
106
106
  specification_version: 4
107
107
  summary: File path collectiong utility