barley 0.6.1 → 0.6.2
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/README.md +0 -5
- data/lib/barley/error.rb +3 -0
- data/lib/barley/serializer.rb +8 -1
- data/lib/barley/version.rb +1 -1
- data/lib/barley.rb +1 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 802ad211955dc1b4f0579ff2f88ac1e88a56eb2425317ae46b1cda590cfc1f26
|
4
|
+
data.tar.gz: 5f5e309f03e3422f9b2bd7e7b7319994c5c63d3367043e6f6c19328784e73c01
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3189c87d7fe0d3cdb96a6c503a56f0469a3f97cd965feeafb0337e351cdd8199990b63ac1d119381ef3058914ed07b41f81fc9b0d1789059ae3d944171731226
|
7
|
+
data.tar.gz: 000bdb7632ea4ab4c1d015fdae029220dc35cbae03ddd1999cf016f21e1c08f46699a7ad610fcc816abbb21e014408c2b838e37a3ef036cb3806b373981f15ab
|
data/README.md
CHANGED
@@ -464,8 +464,3 @@ Make sure you adhere to [our code of conduct](CODE_OF_CONDUCT.md). We aim to kee
|
|
464
464
|
## Security
|
465
465
|
|
466
466
|
Please refer to our [security guidelines](SECURITY.md)
|
467
|
-
|
468
|
-
## Credits
|
469
|
-
Barley is brought to you by the developer team from [StockPro](https://www.stock-pro.fr/).
|
470
|
-
|
471
|
-
[](https://www.stock-pro.fr/)
|
data/lib/barley/error.rb
CHANGED
data/lib/barley/serializer.rb
CHANGED
@@ -73,11 +73,18 @@ module Barley
|
|
73
73
|
# @param key_name [Symbol] the key name in the hash
|
74
74
|
# @param type [Dry::Types] the type to use, or coerce the value to
|
75
75
|
# @param block [Proc] a block to use to compute the value
|
76
|
+
# @raise [Barley::InvalidAttributeError] if the value does not match the type - when a type is provided
|
76
77
|
def attribute(key, key_name: nil, type: nil, &block)
|
77
78
|
key_name ||= key
|
78
79
|
define_method(key_name) do
|
79
80
|
value = block ? instance_eval(&block) : object.send(key)
|
80
|
-
type.nil?
|
81
|
+
if type.nil?
|
82
|
+
value
|
83
|
+
else
|
84
|
+
raise Barley::InvalidAttributeError, "Invalid value type found for attribute #{key_name}::#{type.name}: #{value}::#{value.class}" unless type.valid?(value)
|
85
|
+
|
86
|
+
type[value]
|
87
|
+
end
|
81
88
|
end
|
82
89
|
|
83
90
|
self.defined_attributes = (defined_attributes || []) << key_name
|
data/lib/barley/version.rb
CHANGED
data/lib/barley.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: barley
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cedric Delalande
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-06-
|
11
|
+
date: 2024-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|