rbbt-util 5.14.2 → 5.14.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e22611b53d0c2a89c0e2a3b21317d44247bd015d
4
- data.tar.gz: c75e90adddd0e88805458e51bdd28a4b46143b90
3
+ metadata.gz: 0861b4fc08580d2d67c2359eb41ba10d8f98fc54
4
+ data.tar.gz: 20f541a44866d348ebbde761c95b66acec879f5f
5
5
  SHA512:
6
- metadata.gz: 02abe6b04eb5877e7be78d8742e861cb21df05694e7e467a12076ca2cb3b9e772f1f30f1f6a9bb21843e6f4e301618c561a6813b3b2fc147530819ea03657c4d
7
- data.tar.gz: cba9bdf10dd98e2e8ea022984ca4c74282a74c780431034cd738c48941d5174d0fdae3faeaf47f3a3dcddef09490ec386351f069b944e06cc4a4702967b8408a
6
+ metadata.gz: 3ca34de7e7851c59df081c5ca65647341a4688f597c79e14ca2b5ec19d742defbdb0dcf9200eaa48a937b670a5384ac1584e5cf6826414d947a86913c21ec115
7
+ data.tar.gz: 7815dd4a71975589f9d849950d2e0b4053cce9a65a798b98bf74184a3b9135906194bc752a72b3174d40ab221304dc2a43a5c7cf9f7d4f289b8c57bb4baf39d1
@@ -479,7 +479,8 @@ module TSV
479
479
  def self.traverse(obj, options = {}, &block)
480
480
  into = options[:into]
481
481
 
482
- if into == :stream
482
+ case into
483
+ when :stream
483
484
  sout = Misc.open_pipe false, false do |sin|
484
485
  begin
485
486
  traverse(obj, options.merge(:into => sin), &block)
@@ -489,6 +490,12 @@ module TSV
489
490
  end
490
491
  end
491
492
  return sout
493
+ when :dumper
494
+ obj_options = obj.respond_to?(:options) ? obj.options : {}
495
+ dumper = TSV::Dumper.new obj_options.merge(options)
496
+ dumper.init
497
+ traverse(obj, obj_options.merge(:into => dumper), &block)
498
+ return dumper
492
499
  end
493
500
 
494
501
  threads = Misc.process_options options, :threads
@@ -363,6 +363,7 @@ module TSV
363
363
  def initialize(stream = nil, options = {})
364
364
  @header_hash = Misc.process_options(options, :header_hash) || "#"
365
365
  @sep = Misc.process_options(options, :sep) || "\t"
366
+ stream = TSV.get_stream stream
366
367
  @stream = stream
367
368
 
368
369
 
@@ -31,10 +31,12 @@ module TSV
31
31
  stream.get_stream || stream.join.path.open
32
32
  when Path
33
33
  stream.open
34
+ when TSV::Dumper
35
+ stream.stream
34
36
  else
35
37
  stream
36
38
  end
37
- end
39
+ end.compact
38
40
 
39
41
  num_streams = streams.length
40
42
 
@@ -54,13 +56,15 @@ module TSV
54
56
 
55
57
  streams = streams.collect do |stream|
56
58
  parser = TSV::Parser.new stream, options
57
- lines << parser.first_line
58
- empty << stream if parser.first_line.nil?
59
- key_fields << parser.key_field
60
- fields << parser.fields
61
- sizes << parser.fields.length if parser.fields
59
+
60
+ lines << parser.first_line
61
+ empty << stream if parser.first_line.nil?
62
+ key_fields << parser.key_field
63
+ fields << parser.fields
64
+ sizes << parser.fields.length if parser.fields
62
65
  input_options << parser.options
63
- preambles << parser.preamble if TrueClass === preamble and not parser.preamble.empty?
66
+ preambles << parser.preamble if TrueClass === preamble and
67
+ not parser.preamble.empty?
64
68
 
65
69
  parser.stream
66
70
  end
@@ -136,7 +140,7 @@ module TSV
136
140
  retry
137
141
  end
138
142
  else
139
- if sizes[i] > 0
143
+ if sizes[i] and sizes[i] > 0
140
144
  p = sep * (sizes[i]-1)
141
145
  str << p
142
146
  end
@@ -177,13 +181,13 @@ module TSV
177
181
  end
178
182
 
179
183
  def self.stream_flat2double(stream, options = {})
180
- parser = TSV::Parser.new stream
184
+ parser = TSV::Parser.new TSV.get_stream(stream)
181
185
  dumper_options = parser.options.merge(options).merge(:type => :double)
182
186
  dumper = TSV::Dumper.new dumper_options
183
187
  dumper.init
184
188
  TSV.traverse parser, :into => dumper do |key,values|
185
189
  [key, [values]]
186
190
  end
187
- dumper.stream
191
+ dumper
188
192
  end
189
193
  end
@@ -193,7 +193,7 @@ row2 a|aa|aaa
193
193
  s1 = StringIO.new text1
194
194
  s2 = TSV.stream_flat2double(s1, :sep => " ")
195
195
 
196
- assert_equal text2, s2.read
196
+ assert_equal text2, s2.stream.read
197
197
  end
198
198
 
199
199
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.14.2
4
+ version: 5.14.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-22 00:00:00.000000000 Z
11
+ date: 2014-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake