dry-struct-setters 0.3.0 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9e01a70140710199eba2fdbc8fe8ad072bf0d9550c44e6ecf9096b155ec130ca
4
- data.tar.gz: 2b3d5eb7885d613ca73368a398cf9f8ab40880062d40ec2745f40f4de0c3f7f8
3
+ metadata.gz: 2079018a9f21157e4f9d0bee8b21196b68065cb870b6369b8f234b8d0754778f
4
+ data.tar.gz: fc6a503a7701b8efd6fa5c1a3c194b2465fefc71b940b9f113721f76de33432e
5
5
  SHA512:
6
- metadata.gz: 985107b024ed611f0d1b2895c7a1632e78aef45be39e586a449be92b81ed7fc660b2aac5f8ec641b5888cc3d8beebcbda9cb6ce48ba539cb7dcee524d3f201fc
7
- data.tar.gz: 65fc4d3b1c3b3dac69ba61c27c40f8561a9ed2f6e332c6b78a700ad36354477de58afc1a967e42c155d9963748b5c46c149242c7a1471407a0225c2f7065d85c
6
+ metadata.gz: e68597b9f906bad654deabb4f2b74600b98e0658bf137ab9c34ec6f3d094667ac1eac9012075b1bb160070c048e4c0561bfba5be80b28d46a7d83d066c78f2f4
7
+ data.tar.gz: eb716e9ea245ab6dcd77cfced31b8ff2a7157d135b480f3d8ede4d9a0cfbaf741f53825499c207e3ec5f068964b2113982bd70f1e5b1f41582e07a64661638a5
data/.travis.yml CHANGED
@@ -5,9 +5,10 @@ rvm:
5
5
  - 2.3
6
6
  - 2.4
7
7
  - 2.5
8
+ - 3.0
8
9
  - ruby-head
9
10
  matrix:
10
11
  allow_failures:
11
12
  - rvm: ruby-head
12
- before_install: gem install bundler -v 1.15.1
13
+ before_install: gem install bundler -v 2.2.16
13
14
  script: bin/rspec
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 2.1'
23
23
 
24
- spec.add_runtime_dependency 'dry-struct', '>= 1.0.0'
24
+ spec.add_runtime_dependency 'dry-struct', '>= 1.4.0'
25
25
 
26
26
  spec.add_development_dependency 'bundler'
27
27
  spec.add_development_dependency 'pry'
@@ -3,7 +3,7 @@
3
3
  module Dry
4
4
  class Struct
5
5
  module Setters
6
- VERSION = '0.3.0'
6
+ VERSION = '0.4.0'
7
7
  end
8
8
  end
9
9
  end
@@ -14,6 +14,14 @@ module Dry
14
14
  struct.schema.each do |key|
15
15
  Dry::Struct::Setters.define_setter_for(struct: struct, attribute: key.name, type: key.type)
16
16
  end
17
+
18
+ def []=(key, value)
19
+ if self.class.schema.key?(key)
20
+ public_send("#{key}=", value)
21
+ else
22
+ raise Dry::Struct::MissingAttributeError, key
23
+ end
24
+ end
17
25
  end
18
26
 
19
27
  module ClassMethods
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dry-struct-setters
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tobias Bühlmann
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-16 00:00:00.000000000 Z
11
+ date: 2021-09-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-struct
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0
19
+ version: 1.4.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.0
26
+ version: 1.4.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -121,7 +121,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  - !ruby/object:Gem::Version
122
122
  version: '0'
123
123
  requirements: []
124
- rubygems_version: 3.1.2
124
+ rubygems_version: 3.2.15
125
125
  signing_key:
126
126
  specification_version: 4
127
127
  summary: Setter methods for Dry::Struct subclasses