eac_ruby_utils 0.89.0 → 0.92.0
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 +4 -4
- data/lib/eac_ruby_utils/bit_array.rb +7 -0
- data/lib/eac_ruby_utils/byte.rb +14 -2
- data/lib/eac_ruby_utils/byte_array.rb +1 -1
- data/lib/eac_ruby_utils/patches/object/asserts.rb +11 -0
- data/lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb +13 -0
- data/lib/eac_ruby_utils/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0d74824328749892433f50acfff8dd16d867abab61ab7115c55f4e3de45a8a8c
|
4
|
+
data.tar.gz: 04b5e0aa890040410a27a38597dc8d46758f406666ae90042bd0ff13fa0cdb60
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 908be31eb44d2d44909f78f7ef5e3a7bb5bf7f5a731d6e0640604c83cf655ca8f49d854114abc9f1a72b3c918999bd651a6bcc78b2a885083d057331a0d4c4eb
|
7
|
+
data.tar.gz: 2bab742f8f453836e06bca57d3528fa442542c53aad1c22fdde7563dfb2d29ffa41ce35700c474b12e338be97cfe2990270882292eb102392868721c25023679
|
@@ -27,6 +27,13 @@ module EacRubyUtils
|
|
27
27
|
push(value)
|
28
28
|
end
|
29
29
|
|
30
|
+
# @return [EacRubyUtils::BitArray] +self+.
|
31
|
+
def push_array(other_bit_array)
|
32
|
+
values_array.push(*other_bit_array.to_a)
|
33
|
+
|
34
|
+
self
|
35
|
+
end
|
36
|
+
|
30
37
|
# @param value [EacRubyUtils::Bit]
|
31
38
|
# @return [EacRubyUtils::Bit]
|
32
39
|
def push(value)
|
data/lib/eac_ruby_utils/byte.rb
CHANGED
@@ -6,6 +6,7 @@ require 'eac_ruby_utils/patches/module/compare_by'
|
|
6
6
|
|
7
7
|
module EacRubyUtils
|
8
8
|
class Byte
|
9
|
+
ASSEMBLY_HEXADECIMAL_PREFIX = '$'
|
9
10
|
BIT_COUNT = 8
|
10
11
|
BIT_INDEX_RANGE = (0..7).freeze
|
11
12
|
VALUE_RANGE = (0..255).freeze
|
@@ -77,8 +78,9 @@ module EacRubyUtils
|
|
77
78
|
self.class.new(bit.zero? ? value & ~mask : value | mask)
|
78
79
|
end
|
79
80
|
|
80
|
-
|
81
|
-
|
81
|
+
# @return [EacRubyUtils::BitArray]
|
82
|
+
def to_bit_array(range = BIT_INDEX_RANGE)
|
83
|
+
::EacRubyUtils::BitArray.new(range.map { |bit_index| self[bit_index] })
|
82
84
|
end
|
83
85
|
|
84
86
|
# @return [Integer]
|
@@ -86,6 +88,16 @@ module EacRubyUtils
|
|
86
88
|
value
|
87
89
|
end
|
88
90
|
|
91
|
+
# @return [String]
|
92
|
+
def to_asm_hex
|
93
|
+
ASSEMBLY_HEXADECIMAL_PREFIX + to_hex
|
94
|
+
end
|
95
|
+
|
96
|
+
# @return [String]
|
97
|
+
def to_hex
|
98
|
+
value.to_s(16).upcase.rjust(2, '0')
|
99
|
+
end
|
100
|
+
|
89
101
|
private
|
90
102
|
|
91
103
|
attr_writer :value
|
@@ -5,7 +5,7 @@ require 'eac_ruby_utils/patches/module/compare_by'
|
|
5
5
|
|
6
6
|
module EacRubyUtils
|
7
7
|
class ByteArray
|
8
|
-
delegate :to_a, :size, :count, :length, :[], :fetch, to: :values_array
|
8
|
+
delegate :to_a, :size, :count, :length, :[], :fetch, :map, to: :values_array
|
9
9
|
compare_by :values_array
|
10
10
|
|
11
11
|
def initialize(values = [])
|
@@ -11,4 +11,15 @@ class Object
|
|
11
11
|
"Argument \"#{argument_name}\" is not a #{klass}" \
|
12
12
|
"(Actual class: #{self.class}, actual value: #{self})"
|
13
13
|
end
|
14
|
+
|
15
|
+
# Raises a ArgumentError if +self.count+ is not equal to +count+.
|
16
|
+
#
|
17
|
+
# @return +self+
|
18
|
+
def assert_count(count, argument_name = 'unknown_argument_name')
|
19
|
+
return self if self.count == count
|
20
|
+
|
21
|
+
raise ::ArgumentError,
|
22
|
+
"Argument \"#{argument_name}\" has wrong elements count" \
|
23
|
+
"(Actual: #{self.count}, Required: #{count})"
|
24
|
+
end
|
14
25
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'pathname'
|
4
|
+
|
5
|
+
class Pathname
|
6
|
+
# A .glob that raises a ::RuntimeError if +self+ is not a directory.
|
7
|
+
# @return [Pathname]
|
8
|
+
def reqdir_glob(*args)
|
9
|
+
raise ::RuntimeError, "\"#{self}\" is not a directory" unless directory?
|
10
|
+
|
11
|
+
glob(*args)
|
12
|
+
end
|
13
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eac_ruby_utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.92.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Esquilo Azul Company
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-03-
|
11
|
+
date: 2022-03-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -215,6 +215,7 @@ files:
|
|
215
215
|
- lib/eac_ruby_utils/patches/pathname/mkpath_s.rb
|
216
216
|
- lib/eac_ruby_utils/patches/pathname/parent_n.rb
|
217
217
|
- lib/eac_ruby_utils/patches/pathname/readlink_r.rb
|
218
|
+
- lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb
|
218
219
|
- lib/eac_ruby_utils/patches/regexp.rb
|
219
220
|
- lib/eac_ruby_utils/patches/regexp/if_match.rb
|
220
221
|
- lib/eac_ruby_utils/patches/regexp/to_parser.rb
|