iounpack 0.2.0 → 0.2.1

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: e7c1ffedfc8370e5811eec54d31d1511f6b0a049
4
- data.tar.gz: dc7d181a233daa8b9a1eb0df57d1fc2f6139e9d5
3
+ metadata.gz: 8e9c513713c8f0382df6b9e5c5856360a8abb214
4
+ data.tar.gz: 944f8476e751e1f9fe4479919f6f13d94bcb664d
5
5
  SHA512:
6
- metadata.gz: 95a0ad0a5ada66edacad8e40af5fa212e8dac4720384071e2107a5d864f36728526eb9f84a43aa6d55fded76911f5d64624c947edf936f946c9867dcec98b9d7
7
- data.tar.gz: f28f80115eb5c9b1c94eddd748370d327617d37192f056a9419c4175c9ca66813331415342665cc56845d2f8e78cd3789d16c5f89067a1734df2714e438a0765
6
+ metadata.gz: 53d99ccd6c47b0d5430b6686e946a4722779cb44d96b9abb7e3ed5141b4c9e33abbbd29adba3334cdf0a4e28bed4ff9d862c78ee622813f07f5019e5f458b25a
7
+ data.tar.gz: e881d487392bced16d6aac40cee49089100abf9a0265c445d8637aab475b95d653d711ab6f622df2c3a3f1be65694d9c4ff0f00588a50624c79b610ed3569371
data/Gemfile.lock ADDED
@@ -0,0 +1,34 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ iounpack (0.2.0)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ diff-lcs (1.3)
10
+ rake (12.3.3)
11
+ rspec (3.9.0)
12
+ rspec-core (~> 3.9.0)
13
+ rspec-expectations (~> 3.9.0)
14
+ rspec-mocks (~> 3.9.0)
15
+ rspec-core (3.9.1)
16
+ rspec-support (~> 3.9.1)
17
+ rspec-expectations (3.9.1)
18
+ diff-lcs (>= 1.2.0, < 2.0)
19
+ rspec-support (~> 3.9.0)
20
+ rspec-mocks (3.9.1)
21
+ diff-lcs (>= 1.2.0, < 2.0)
22
+ rspec-support (~> 3.9.0)
23
+ rspec-support (3.9.2)
24
+
25
+ PLATFORMS
26
+ ruby
27
+
28
+ DEPENDENCIES
29
+ iounpack!
30
+ rake (~> 12.0)
31
+ rspec (~> 3.2)
32
+
33
+ BUNDLED WITH
34
+ 2.1.4
data/iounpack.gemspec CHANGED
@@ -18,6 +18,8 @@ Gem::Specification.new do |spec|
18
18
  spec.metadata["source_code_uri"] = spec.homepage
19
19
  spec.metadata["changelog_uri"] = spec.homepage
20
20
 
21
+ spec.add_development_dependency "rspec", "~> 3.2"
22
+
21
23
  # Specify which files should be added to the gem when it is released.
22
24
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
23
25
  spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
@@ -1,3 +1,3 @@
1
1
  module Iounpack
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
data/lib/iounpack.rb CHANGED
@@ -68,17 +68,18 @@ class IOUnpack
68
68
  Directives[dir.directive.to_s] = dir
69
69
  Regexp.quote dir.directive
70
70
  end.join( '|')+')'
71
- DirectiveRegexp = /\A\s* (?<directive> #{DirectivePattern} ) \s* (?<count> \d+)? \s*/m
71
+ DirectiveRegexp = /\A\s* (?<directive> #{DirectivePattern} ) \s* (?<count> \d+)? \s*/mx
72
+
73
+ attr_reader :len, :pattern
72
74
 
73
75
  def initialize pattern
74
- @order, @len, @pattern = [], 0, pattern
76
+ @len, @pattern = 0, pattern
75
77
  loop do
76
78
  case pattern
77
79
  when /\A\s*\z/m then break
78
80
  when DirectiveRegexp
79
81
  pattern = $'
80
82
  m = [Directives[$~[:directive]], $~[:count] ? $~[:count].to_i : 1]
81
- @order.push m
82
83
  @len += m.first * m.last
83
84
  else
84
85
  raise ArgumentError, "Unknown token: #{pattern[0]}"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iounpack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denis Knauf
@@ -9,7 +9,21 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-04-29 00:00:00.000000000 Z
12
- dependencies: []
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.2'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.2'
13
27
  description: "#unpack works as opposide to pack. It determines length to read for
14
28
  unpacking."
15
29
  email:
@@ -20,6 +34,7 @@ extra_rdoc_files: []
20
34
  files:
21
35
  - ".gitignore"
22
36
  - Gemfile
37
+ - Gemfile.lock
23
38
  - LICENSE.txt
24
39
  - README.md
25
40
  - Rakefile