cbor-diag 0.4.0 → 0.5.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: c6a7e84c48640c916dc125bd166c425200a4679e
4
- data.tar.gz: 6f43c9114327e41b07dba14075342b9bcfe74777
3
+ metadata.gz: 13e320fc5d92c4a1b1b94320c49548de74e047a0
4
+ data.tar.gz: e897c69215772160e7336baa86b0d37ab76d12c4
5
5
  SHA512:
6
- metadata.gz: 3ef7f82c470d359dcb9e2d3c5e8392a3a9eeb8001d403db7ee669623609abba6e777014fbfe1ab6b54350f285053da6416ac6c0c415fbe64a031925272c76cc0
7
- data.tar.gz: 1dd32b4c87a5ae973c0c431e486a9432b835e92ef44537f93e64b5bab86aaf23b5b5c17d160c6da2c5cd3835d0d5c1b1b3fb4283aa3b05d7317864090fad186a
6
+ metadata.gz: e681c9c67393f2790fbdcd4e2f53f878fb8b39b58a74b814d897221010609ccd6ef1851fef674f96f61db2b48aa90c1c16d59ff57e761368f45c86c7c4360224
7
+ data.tar.gz: dbd1bb358112ad7eb5de9737b5e8e98d9b6dd6095db0f4eca96bb3e49167cfd4fa11ad8467488f75e09ed6639df09dff244277a6bd2d7c441f82060038bfa2d2
data/cbor-diag.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cbor-diag"
3
- s.version = "0.4.0"
3
+ s.version = "0.5.0"
4
4
  s.summary = "CBOR (Concise Binary Object Representation) diagnostic notation"
5
5
  s.description = %q{cbor-diag implements diagnostic notation for CBOR, RFC 7049}
6
6
  s.author = "Carsten Bormann"
@@ -77,6 +77,6 @@ end
77
77
 
78
78
  class CBOR::Tagged
79
79
  def cbor_diagnostic(options = {})
80
- "#{tag}(#{data.cbor_diagnostic(options)})"
80
+ "#{tag}(#{value.cbor_diagnostic(options)})"
81
81
  end
82
82
  end
data/lib/cbor-pretty.rb CHANGED
@@ -12,11 +12,13 @@ class String
12
12
  end
13
13
 
14
14
 
15
- class CBOR
15
+ module CBOR
16
16
  def self.pretty(s, indent = 0, max_target = 40)
17
- new(s).pretty_item_final(indent, max_target)
17
+ Buffer.new(s).pretty_item_final(indent, max_target)
18
18
  end
19
19
 
20
+ class Buffer
21
+
20
22
  def take_and_print(n, prefix = '')
21
23
  s = take(n)
22
24
  @out << prefix
@@ -85,4 +87,6 @@ class CBOR
85
87
  }.join
86
88
  end
87
89
 
90
+ end
91
+
88
92
  end
data/lib/cbor-pure.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  require "half.rb"
4
4
 
5
5
 
6
- class CBOR
6
+ module CBOR
7
7
  class OutOfBytesError < RuntimeError
8
8
  def initialize(bytes)
9
9
  @bytes = bytes
@@ -28,16 +28,26 @@ class CBOR
28
28
  Hash.send(:include, Streaming)
29
29
  String.send(:include, Streaming)
30
30
 
31
+ module CoreExt
32
+ def to_cbor
33
+ CBOR.encode(self)
34
+ end
35
+ end
36
+ Object.send(:include, CoreExt)
37
+
31
38
  class Break
32
39
  end
33
40
  BREAK = Break.new.freeze
34
41
 
35
- Tagged = Struct.new(:tag, :data) do
42
+ Tagged = Struct.new(:tag, :value) do
36
43
  def to_s
37
- "#{tag}(#{data})"
44
+ "#{tag}(#{value})"
38
45
  end
39
46
  def inspect
40
- "#{tag}(#{data.inspect})"
47
+ "#{tag}(#{value.inspect})"
48
+ end
49
+ def data # backwards compat to pre-0.5.0
50
+ value
41
51
  end
42
52
  end
43
53
 
@@ -55,25 +65,27 @@ class CBOR
55
65
  end
56
66
 
57
67
  def self.encode(d)
58
- new.add(d).buffer
68
+ Buffer.new.add(d).buffer
59
69
  end
60
70
  def self.encode_seq(ds)
61
- out = new
71
+ out = Buffer.new
62
72
  ds.each do |d|
63
73
  out.add(d)
64
74
  end
65
75
  out.buffer
66
76
  end
67
77
  def self.decode(s)
68
- new(s).decode_item_final
78
+ Buffer.new(s).decode_item_final
69
79
  end
70
80
  def self.decode_with_rest(s)
71
- new(s).decode_item_with_rest
81
+ Buffer.new(s).decode_item_with_rest
72
82
  end
73
83
  def self.decode_seq(s)
74
- new(s).decode_items
84
+ Buffer.new(s).decode_items
75
85
  end
76
86
 
87
+ class Buffer
88
+
77
89
  attr_reader :buffer
78
90
  def initialize(s = String.new)
79
91
  @buffer = s
@@ -149,7 +161,7 @@ class CBOR
149
161
  when nil; head(0xe0, 22)
150
162
  when Tagged # we don't handle :simple here
151
163
  head(0xc0, d.tag)
152
- add(d.data)
164
+ add(d.value)
153
165
  when String
154
166
  lengths = d.cbor_stream?
155
167
  e = d
@@ -301,4 +313,9 @@ class CBOR
301
313
  end
302
314
  ret
303
315
  end
316
+
317
+
318
+ end
319
+
320
+
304
321
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cbor-diag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carsten Bormann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-06 00:00:00.000000000 Z
11
+ date: 2017-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler